使用html和css制作水平导航栏nav

使用html和css制作水平导航栏nav使用html和css制作水平导航栏nav的方法及其效果:1、li设置float:left;(1)代码片段:…<style>*{margin:0;padding:0;}ul{list-style-type:none;marg

大家好,又见面了,我是你们的朋友全栈君。

使用html和css制作水平导航栏nav的方法及其效果:
1、li设置float:left;
(1)代码片段:

...
    <style>
        *{
            margin:0;
            padding:0;
        }
        ul{
            list-style-type:none;
            margin:100px 50px;/*margin:100px auto无效,不能使ul左右居中*/
            text-align:center;
            font-size:14px;
        }
        li{
            float:left;/*改动的地方*/
            width:80px;
            padding:10px;
            background-color:#ff9137;
        }
        a:link,a:visited,a:hover,a:active{
            color:#fff;
            text-decoration:none;
        }
        a{
            display:block;/*整体变为可点击区域,而不只是字*/
        }
    </style>
</head>
<body>
    <ul>
        <li><a href="#">Home</a></li>
        <li><a href="#">News</a></li>
        <li><a href="#">Contact</a></li>
        <li><a href="#">About</a></li>
    </ul>
</body>
...

(2)呈现效果:
li{float:left;}
(3)备注:
①可对ul设置margin,但是设置为margin:100px auto时无法让ul居中
②ul所占高度为0。
③可对li设置width,自由调节宽度。
④可对li设置margin,使li之间有空白。
⑤可对a设置display:block;使整体变成可点击区域。
⑥如果想让链接有相同的大小,就必须用浮动,不能用display:inline;

2、li设置display:inline-block;
(1)代码片段:

...
<style>
        *{
            margin:0;
            padding:0;
        }
        ul{
            list-style-type:none;
            margin:100px;
            text-align:center;
            font-size:14px;
        }
        li{
            display:inline-block;/*改动的地方*/
            width:80px;
            padding:10px;
            background-color:#ff9137;
        }
        a:link,a:visited,a:hover,a:active{
            color:#fff;
            text-decoration:none;
        }
        a{
            display:block;
        }
    </style>
</head>
<body>
    <ul>
        <li><a href="#">Home</a></li>
        <li><a href="#">News</a></li>
        <li><a href="#">Contact</a></li>
        <li><a href="#">About</a></li>
    </ul>
</body>
...

(2)呈现效果:
li{display:inline-block;}
(3)备注:
①对ul设置margin:100px auto;可让ul左右居中。
②即使li没有margin,各个li之间还是会有空白。
(aSuncat-20190809:可对父元素font-size设置0,子元素font-size设置成正常的,来消除空白)
③可对a设置display:block;使整体变成可点击区域。

3、li设置display:inline;
(1)代码片段:

...
    <style>
        *{
            margin:0;
            padding:0;
        }
        ul{
            list-style-type:none;
            margin:100px;/*margin:100px auto;可让ul左右居中*/
            text-align:center;
            font-size:50px;
        }
        li{
            display:inline;/*改动的地方*/
            padding:10px;
            background-color:#ff9137;
        }
        a:link,a:visited,a:hover,a:active{
            color:#fff;
            text-decoration:none;
        }
    </style>
</head>
<body>
    <ul>
        <li><a href="#">Home</a></li>
        <li><a href="#">News</a></li>
        <li><a href="#">Contact</a></li>
        <li><a href="#">About</a></li>
    </ul>
</body>
...

(2)呈现效果:
li{display:inline}
(3)备注:
①可对ul设置margin:100px auto,可使ul左右居中。
②即使li没有margin,各个li之间还是会有空白。
③不能对li设置width,即无法限定宽度。
④不能对a设置display:block;a会溢出,达不到我们想到的效果。
呈现效果如下:
a{display:block}的效果

4、li设置position:absolute;
(1)代码片段:

...
    <style>
        *{
            margin:0;
            padding:0;
        }
        ul{
            list-style-type:none;
            margin:100px 50px;
            text-align:center;
            font-size:14px;
            position:relative;
        }
        li{
            position:absolute;/*改动的地方*/
            top:0;
            width:80px;
            padding:10px;
            background-color:#ff9137;

        }
        .li1{
           left:0;
        }
        .li2{
            left:80px;
        }
        .li3{
            left:160px;
        }
        .li4{
            left:240px;
        }
        a:link,a:visited,a:hover,a:active{
            color:#fff;
            text-decoration:none;
        }
        a{
            display:block;/*整体变为可点击区域,而不只是字*/
        }
    </style>
</head>
<body>
<ul>
    <li class="li1"><a href="#">Home</a></li>
    <li class="li2"><a href="#">News</a></li>
    <li class="li3"><a href="#">Contact</a></li>
    <li class="li4"><a href="#">About</a></li>
</ul>
</body>
...

(2)呈现效果:
li{position:absolute;}
(3)备注:
①对ul设置position:relative,便于对li设置position;
②对li设置position:absolute; top:0;
③对不同li设置left ;这样可以让li在不同的位置显示出来,而不是全部堆叠在一起。
④最不推荐这种方法,得给每个li一个left,比较麻烦。

总结:个人比较喜欢用float:left;①各个li的宽度以及li之间的距离都可以自己设置,灵活性更高。②可对a设置display:block;使整体变成可点击区域,而不只是字可以点击。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/141011.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • SQL注入之联合查询注入

    SQL注入之联合查询注入联合查询注入利用的前提前提条件:页面上有显示位什么是显示位?在一个在一个网站的正常页面,服务端执行SQL语句查询数据库中的数据,客户端将数据展示在页面中,这个展示数据的位置就叫显示位联合注入的过程1、判断注入点2、判断是整型还是字符型3、判断查询列数4、判断显示位5、获取所有数据库名6、获取数据库(test)所有表名7、获取(数据库:test,表:admin)中所有字段名8、获取字段中的数据一、…

  • 访问数据库使用redis作为mysql的缓存(redis和mysql结合)

    访问数据库使用redis作为mysql的缓存(redis和mysql结合)首先声明一下,我是在一个SSM项目的基础上进行优化的,所以就不进行基础的介绍了。下面我也补充一些知识点:redis:内存型数据库,有持久化功能,具备分布式特性,可靠性高,适用于对读写效率要求都很高,数据处理业务复杂和对安全性要求较高的系统(如新浪微博的计数和微博发布部分系统,对数据安全性、读写要求都很高)。缓存机制说明:所有的查询结果都放进了缓存,也就是把MySQL查询的结果放…

  • 5G网络技术「建议收藏」

    文章目录1.技术指标和三大应用场景(1)4G和5G指标对比(2)三大应用场景2.应用场景范例(1)5G应用场景——VR/AR/MR(2)5G应用场景——车联网(3)5G应用场景——智慧医疗(4)5G应用场景——智慧城市3.关键技术(1)超密集组网(2)大规模天线阵列(3)动态自组织网络(SON)(4)软件定义网络(SDN)(5)网络功能虚拟化(NFV)(6)SDN与NFV的区别4.面临的挑战(1)频谱资源挑战(2)新业务挑战(3)新使用场景挑战(4)终端设备挑战(5)安全挑战1.技术指标和三大应用

  • CSS-精灵图片的使用(从一张图片中截图指定位置图标)

    CSS-精灵图片的使用(从一张图片中截图指定位置图标)目录一、名词解释二、使用难点三、使用步骤四、程序源码一、名词解释  在网页中,我们可以看到有很多的小图标,比如微博上的登录位置有很多这样的小图标。因为浏览器显示网页的所有内容都需要从我们自己的服务器进行下载,如果将这些图标分别存在服务器上,那么当需要显示的时候将会发出很多次请求–&gt;响应–&gt;下载,这样一来将会消耗大量的时间来下载这些小图标  所…

  • 计算机技术与生物学的关系,生物信息学复习整理

    计算机技术与生物学的关系,生物信息学复习整理生信整理一、重要概念1.生物信息学的定义、研究内容、组成采用信息学的方法来研究生命科学定义:生物信息学迄今为止尚没有一个标准定义(广义:生命科学中的信息科学。生物体系和过程中信息的存贮、传递和表达;细胞、组织、器官的生理、病理、药理过程的中各种生物信息。狭义:生物分子信息的获取、存贮、分析和利用。)研究内容:①基础研究——数学:模型、算法;IT:数据库、计算机软、硬件开发②应用(生命科学研发)—…

  • 三菱数据移位指令_三菱PLC移位指令「建议收藏」

    三菱数据移位指令_三菱PLC移位指令「建议收藏」(2011-05-2014:09:54)转载▼标签:杂谈分类:技术三菱PLC移位指令分左移和右移,分别是SFTL和SFTR。而针对位的移位则是SFTLP和SFTRP,前几天给学生讲这个指令时专门做了个跑马灯的例子,用的就是这个指令。下面简单讲解一下SFTLP。指令格式为SFTLPM20M0K8K1SFTLP——对位进行左移;M20——移进来的是“1”还是“0”得看M20的状态,M…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号