29.前端css小米导航栏设置及定位问题

1.小米最上部导航栏设置

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <style>
        *{
            padding: 0;
            margin: 0;
        }
        /*取消前面的点*/
        ul{
            list-style: none;
        }
        .nav{
            width: 960px;
            overflow: hidden;
            margin: 50px auto;
            background-color: purple;
            /*设置圆角*/
            border-radius: 5px;
        }
        .nav ul li{
            float: left;
            width: 160px;
            height: 40px;
            line-height: 40px;
            text-align: center;

        }
        .nav ul li a{
            width: 160px;
            height: 40px;
            display: block;
            color: white;
            font-size: 14px;
            text-decoration: none;

        }
        .nav ul li a:hover{
            background: yellow;
            color: green;
            text-decoration: underline;
        }

    </style>
</head>
<body>
    <div class="nav">
        <ul>
            <li>
                <a href="#">网站导航</a>
            </li>
            <li>
                <a href="#">网站导航</a>
            </li>
            <li>
                <a href="#">网站导航</a>
            </li>
            <li>
                <a href="#">网站导航</a>
            </li>
            <li>
                <a href="#">网站导航</a>
            </li>
            <li>
                <a href="#">网站导航</a>
            </li>
        </ul>
    </div>

</body>
</html>

2.导航栏定位问题(position)

有3种方式:

相对定位

固定定位

绝对定位

2.1相对定位(relative)

  相对自己原来的位置进行定位,自己原来的位置作为参考点

  使用relative下的top,left进行定位

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        body{
            border: 1px solid green;
        }
        div{
            width: 200px;
            height: 200px;
            background-color: red;
            position: relative;
            top: 30px;
            left: 30px;
        }
    </style>
</head>
<body>
    <div></div>
</body>
</html>

使用相对定位可以来进行后续表单位置设计

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        .t{
            font-size: 30px;
        }
        .xiaoming{
            position: relative;
            top: 4px;
        }
    </style>
</head>
<body>

    <div>
        <input type="text" class="t">
        <input type="text" class="xiaoming">

    </div>

</body>
</html>

2.2绝对定位(absolute)

一般情况下:

1.当我使用top属性描述的时候 是以页面的左上角(跟浏览器的左上角区分)为参考点来调整位置
2.当我使用bottom属性描述的时候。是以首屏页面左下角为参考点来调整位置。

以父辈盒子作为参考点:

1.父辈元素设置相对定位,子元素设置绝对定位,那么会以父辈元素左上角为参考点

2.如果父亲设置了定位,那么以父亲为参考点。

例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>

        .wrap{
            width: 400px;
            height: 400px;
            padding: 100px;
            background-color: yellow;
            position: relative;

        }

        .container{
            width: 500px;
            height: 500px;
            background-color: green;
            position: relative;
            padding: 20px;

        }
        .box1{
            width: 200px;
            height: 200px;
            background-color: red;
            position: absolute;
            top: 100px;
            left: 50px;

        }
    </style>
</head>
<body style=‘height: 2000px;‘>
     <div class="wrap">
        <div class="container">
             <div class="box1">

              </div>
        </div>
    </div>
</body>
</html>

绝对定位下盒子居中问题:

  设置绝对定位之后,margin:0 auto;不起任何作用,如果想让绝对定位的盒子居中

  设置子元素绝对定位,然后left:50%; margin-left等于元素宽度的一半,实现绝对定位盒子居中

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        *{
            padding: 0;
            margin: 0;
        }
        .nav{
            width: 960px;
            height: 49px;
            background-color: purple;
            position: absolute;
            left: 50%;
            margin-left: -480px;

        }
    </style>
</head>
<body>

    <div class="nav">

    </div>
</body>
</html>

2.3固定定位(fixed)

  设置固定定位,用top描述,那么是以浏览器的左上角为参考点

       如果用bottom描述,那么是以浏览器的左下角为参考点

固定定位,点击后返回顶部:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        p{
            width: 100px;
            height: 100px;
            background-color: red;
            position: fixed;
            bottom: 0;
            right: 50px;
            line-height: 100px;
            text-align: center;
            color: white;
        }
    </style>
    <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
</head>
<body>

    <div class="wrap">
        <p>
            <a href="#">回到顶部</a>

        </p>
        <img src="./timg.jpg" alt="">
        <img src="./timg.jpg" alt="">
        <img src="./timg.jpg" alt="">
        <img src="./timg.jpg" alt="">
        <img src="./timg.jpg" alt="">
        <img src="./timg.jpg" alt="">
        <img src="./timg.jpg" alt="">
        <img src="./timg.jpg" alt="">
        <img src="./timg.jpg" alt="">
        <img src="./timg.jpg" alt="">
        <img src="./timg.jpg" alt="">
        <img src="./timg.jpg" alt="">
        <img src="./timg.jpg" alt="">
        <img src="./timg.jpg" alt="">
        <img src="./timg.jpg" alt="">
        <img src="./timg.jpg" alt="">
        <img src="./timg.jpg" alt="">
        <img src="./timg.jpg" alt="">

    </div>

    <script>

        $(function(){
            $(‘p‘).click(function(){
                $(‘html‘).animate({
                    "scrollTop":0
                },1000)
            })
        })
    </script>
</body>
</html>

3.z-index(用于涂层之间的遮盖)

  z-index 值表示谁压着谁,数值大的压盖住数值小的

  只有定位了的元素,才能有z-index(浮动元素无法使用)

  index值没有单位,就是一个正整数,默认的z-index值为0如果大家都没有z-index值,或者z-index值一样,那么谁写在HTML后面,谁在上面压着别人,定位了元素,永远压住没有定位的元素

  也具有从父现象

例1

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>

        .box1{
            width: 200px;
            height: 200px;
            background-color: red;

        }
        .box2{
            width: 200px;
            height: 200px;
            background-color: green;
            position: relative;
            top: 50px;
            z-index: 10;

        }
        .box3{
            width: 200px;
            height: 200px;
            background-color: yellow;
            position: relative;
            z-index: 8;

        }

    </style>
</head>
<body>
    <div class="box1">

    </div>
    <div class="box2">

    </div>
    <div class="box3">

    </div>

</body>
</html>

z-index的应用:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <style>
        *{
            padding: 0;
            margin: 0;
        }
        ul{
            list-style: none;
        }
        /*设置图片与固定栏间的距离*/
        body{
            padding-top: 40px;
        }
        .nav{
            width: 100%;
            height: 40px;
            background-color: black;
            position: fixed;
            top: 0;
            left: 0;
            z-index: 99999;
            /*数值最大,谁也无法压盖住固定栏*/
        }
        .wrap{
            width: 960px;
            overflow: hidden;
            margin: 0px auto;
            background-color: purple;
            border-radius: 5px;

        }
        .wrap ul li{
            float: left;
            width: 160px;
            height: 40px;
            line-height: 40px;
            text-align: center;

        }
        .wrap ul li a{
            width: 160px;
            height: 40px;
            display: block;
            color: white;
            font-size: 14px;
            text-decoration: none;

        }
        .wrap ul li a:hover{
            background: yellow;
            color: green;
            text-decoration: underline;
        }

        p{
            position: relative;
        }

    </style>
</head>
<body style="height: 3000px">
    <div class="nav">
        <div class="wrap">
            <ul>
                <li>
                    <a href="#">网站导航</a>
                </li>
                <li>
                    <a href="#">网站导航</a>
                </li>
                <li>
                    <a href="#">网站导航</a>
                </li>
                <li>
                    <a href="#">网站导航</a>
                </li>
                <li>
                    <a href="#">网站导航</a>
                </li>
                <li>
                    <a href="#">网站导航</a>
                </li>
            </ul>
        </div>
    </div>

    <img src="./timg.jpg" alt="">
    <img src="./timg.jpg" alt="">
    <img src="./timg.jpg" alt="">
    <img src="./timg.jpg" alt="">
    <p>哈哈哈哈哈哈哈哈</p>
    <img src="./timg.jpg" alt="">
    <img src="./timg.jpg" alt="">
    <img src="./timg.jpg" alt="">

</body>
</html>

原文地址:https://www.cnblogs.com/LearningOnline/p/9090761.html

时间: 2024-12-10 16:21:08

29.前端css小米导航栏设置及定位问题的相关文章

谈谈一些有趣的CSS题目(八)-- 纯CSS的导航栏Tab切换方案

开本系列,谈谈一些有趣的 CSS 题目,题目类型天马行空,想到什么说什么,不仅为了拓宽一下解决问题的思路,更涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题中有你感觉到生僻的 CSS 属性,赶紧去补习一下吧. 不断更新,不断更新,不断更新,重要的事情说三遍. 谈谈一些有趣的CSS题目(一)-- 左边竖条的实现方法 谈谈一些有趣的CSS题目(二)-- 从条纹边框的实现谈盒子模型 谈谈一些有趣的CSS题目(三)-- 层叠顺序与堆栈上下文知多少 谈谈一些有趣

转:ios导航栏设置

原帖:http://www.cocoachina.com/industry/20131104/7287.html 本文提供的代码需要用Xcode 5来执行.如果你还在使用老版本的Xcode,那么在运行示例之前请将Xcode升级到Xcode 5. iOS 7中默认的导航栏 在开始定制之前,我们先来看看iOS 7中默认导航栏的外观.通过Xcode用Single View Controller模板创建一个工程.然后将view controller嵌入到一个navigation controller中.

第8天:CSS制作导航栏

今天主要学习了网页导航栏的制作.注意:引入外部CSS样式时,如果使用background:url(../images/1.png),一定记得用..跳出当前文件夹,回到上级目录. 一.导航栏实现步骤: 1.网页整体分为头部.内容.尾部.网页中心内容部分为版心.版心是定宽的. 2.设定版心宽度.其余每部分内容只需要设置高度即可. 3.header部分分为左.中.右三部分.分别用div包起来,可以设置padding. 4.nav部分用ul实现,li中的a标签为行内元素,要用display转为块标签,给

Css之导航栏学习

Css: ul { list-style-type:none; margin:0; padding:0; overflow:hidden; background-color:blue; /*固定在顶部*/ position:fixed; top:0; width:100%; } li { float:left; } /* 出来最后一个选项(last-child) 其他的都添加分割线 */ li { border-right: 1px solid #bbb; } li:last-child { b

html css二级导航栏

二级导航栏制作: 1.将一级导航栏去除列表样式(list-style:none),并给予浮动,使其横向排列(float:left) 2.给每个li中添加一个<a></a>标签,给a设置样式,使其成为块级元素( display:block),这样只需要点击当前 li 范围区域即可触发a的跳转 3.给需要添加二级导航栏的li里面添加 ul>li ,给个类名,设置其样式为(display:none),使其在普通情况下隐藏 4.设置一级导航栏划过效果,当滑到有二级导航栏的 li 时,

关于导航栏设置状态栏样式问题

1.如果没有导航控制器, - (UIStatusBarStyle)preferredStatusBarStyle{ return UIStatusBarStyleLightContent; } 在viewDidLoad中 [self setNeedsStatusBarAppearanceUpdate];这样才可以调用上面的方法,设置状态栏的样式 2.如果有导航控制器,那么这么做是无法调用设置状态栏的方法,此时要UINavigationController的category,在这个category

巧妙使用checkbox制作纯css动态导航栏

前提:很多时候.我们的网页都需要一个垂直的导航栏.可以分类.有分类.自然就有展开.关闭的功能.你还在使用jquery操作dom来制作吗?那你就out了! 方案:使用checkbox 的 checked 属性.巧妙地制作导航栏 结果: 我们主要制作成这样这样的的导航栏: 首先.我们写出相对的html  由于时间问题.svg没有处理到类中.所以这里给出svg的空标签.大家如果想看效果.可以到我的git里面fork一份 <div class="nav-child"> <in

8. 小程序标题栏和导航栏设置

设置标题栏 标题栏window在app.json文件里面,通过window对象里面的属性进行设置 window 用于设置小程序的状态栏.导航条.标题.窗口背景色. 属性 类型 默认值 描述 最低版本 navigationBarBackgroundColor HexColor #000000 导航栏背景颜色,如"#000000"   navigationBarTextStyle String white 导航栏标题颜色,仅支持 black/white   navigationBarTit

CSS实现导航栏底部动态滚动条效果

预习了CSS3部分的新知识,想着在不使用JS的情况下实现导航栏滚动条效果,如下: 实现滚动条效果,其实就是在<li></li>标签中让<span>元素的宽度由0变化到100%,代码很简单,如下所示: CSS样式部分: <style> ul.nav{background-color: whitesmoke;} ul.nav li{padding: 10px 0;margin: 0 30px;overflow: hidden;} ul.nav li a{text