导航窗口用html语言怎么写,html通用导航条制作详解

导航窗口用html语言怎么写,html通用导航条制作详解第一步:先创建一个盒子,定义类为nav,width1000,height40px,防京东的导航,与浏览器顶部100px,margin-top:100px,看的更直观第二步:使用无序列表放置,导航条的内容,这个可以自己定,这里设定ul宽1000px;高40px;因为ul是块状元素,出现下面的样子,可以思考块状元素在firefox中和ie6下面有什么不同。通常在写样式的时候,要初始化我…

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

第一步:先创建一个盒子,定义类为 nav,width 1000,height 40px,防京东的导航,与浏览器顶部100px,margin-top:100px,看的更直观

第二步:使用无序列表放置,导航条的内容,这个可以自己定,这里设定 ul 宽1000px;高 40px;因为ul是块状元素,出现下面的样子,可以思考块状元素在firefox中和 ie6下面有什么不同。

fff6c98081bf8904098fb5e1bd59ff4b.gif

通常在写样式的时候,要初始化我们的css样式表,这里具体用到哪些,初始哪些,具体设置 list-style:none; margin:0;padding:0;

第三步:现在所有的栏目都是紧挨着,我们要给li设置宽度为100px,通过float:left 将他们分开,给li加一个 背景色blue,知道我们所处的位置,更好的去调节我们的页面

fff6c98081bf8904098fb5e1bd59ff4b.gif,现在暂不去掉背景色,给 li 添加高度 height:40px;使用 line-height:40px; 垂直居中,text-align:center; 水平居中。 效果如右

fff6c98081bf8904098fb5e1bd59ff4b.gif

第四步:为了体现这一步遇到的问题,我把最后一个栏目多加了几个字,

fff6c98081bf8904098fb5e1bd59ff4b.gif 可以看出栏目之间的距离是不同的,为了寻找问题,我们给 li 设置一个宽度为 1px的 右外边距, margin-right:1px;

fff6c98081bf8904098fb5e1bd59ff4b.gif  这个时候就很清楚的发现问题了,由于给li设定了宽度,所以当文字多了以后,不能够自动伸缩适应,这时候就要去掉宽度。

fff6c98081bf8904098fb5e1bd59ff4b.gif 这个时候,宽度能够伸缩适应了,但是文字的空间太少,影响视觉,解决办法,添加所有内边距10px,给li 样式添加 padding:0 10px; 现在效果好多了

fff6c98081bf8904098fb5e1bd59ff4b.gif,然后把 margin-right:1px 去掉

fff6c98081bf8904098fb5e1bd59ff4b.gif

第五步: 因为导航是需要点击的,我们需要放置 超链接(a标签),放在哪里呢,放在li标签内,操作如下,给li添加a标签,设置文字大小12px,规定鼠标移上去和移出的效果。

fff6c98081bf8904098fb5e1bd59ff4b.gif

第六步:如果希望鼠标移动上去显示 黑红色,给a 链接添加一个背景,以便看书a链接的区域。这里给a链接添加 黑色;

fff6c98081bf8904098fb5e1bd59ff4b.gif,然后你发现,当你的鼠标移动到a标签后会出现小手的状态,为了用户体验,我们可以给 a 标签设置一个高度,让我们鼠标刚 接触li 标签就出现小手,添加height后,不管怎么刷新都不会出现,还是原来的样子,引发思考。因为 a 标签 是 内链元素,内链元素是无法设置宽度和高度的,我们需要使用 display:block; 将内链元素转换为块元素。这个时候会出现两种情况

fff6c98081bf8904098fb5e1bd59ff4b.gif

fff6c98081bf8904098fb5e1bd59ff4b.gif,实际效果总是与期望效果不同,这个需要常年累积和对不同浏览器支持的了解。IE6 下面,认为a 标签既然转换为块元素,就要有块元素的特性,独占一行,再加上也没有对a标签的宽度设定,为什么firefox中没有这样呢,那时因为firefox 认为a标签即便是 块元素,也要受到它外面的li标签的影响。如何解决呢,因为现在a标签是块状元素了,所以给a标签添加 float:left; 即可。 现在两个浏览器显示的内容一样了

第七步:当我们鼠标移动到栏目上时,就会变成小手的形状,因为小手的形状是因为有a标签,但是我们发现a标签的宽度有点小,所以这里需要加宽a标签,这里使用 padding:0 10px; 因为之前有给 li 添加padding:0 10px; 为了能够更清晰的控制导航栏目的宽度,这里我们使用a标签来控制,去掉li 的padding。最后去掉a标签的背景,导航栏完成,兼容IE 以及常用浏览器哦。。。

最后的结果

fff6c98081bf8904098fb5e1bd59ff4b.gif

这个导航可以延伸到不同的导航中,基本都差不多。重要的是,了解到一些元素在火狐和ie中的区别,更好的避免所谓的兼容性

最后 去除外面的div 后, 还是可以兼容浏览器的,很爽啊,上代码

body,div,ul,li{padding:0px;margin:0px;}

ul{list-style:none;}

ul{width:1000px;margin:0 auto;background: #e64346;height:40px;margin-top: 100px;}

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

ul li a{font-size: 12px;text-decoration: none;height:40px;display: block;float: left;padding:0 10px;text-decoration: none;color:#fff;}

ul li a:hover{background: #a40000;}

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/146052.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • LAMP配置-php.ini

    LAMP配置-php.ini[PHP]zlib.output_compression=Offimplicit_flush=Offunserialize_callback_func=serialize_precision=-1disable_functions=disable_classes=zend.enable_gc=Onexpose_php=Onmax_execution_time=30max_input_time=60memory_limit=128.

    2022年6月6日
    26
  • linux环境下安装nginx步骤

    linux环境下安装nginx步骤

    2021年10月14日
    51
  • 搞定Android开发环境部署——非常详细的Android开发环境搭建教程[通俗易懂]

    搞定Android开发环境部署——非常详细的Android开发环境搭建教程[通俗易懂]引言在windows安装Android的开发环境不简单也说不上算复杂,本文写给第一次想在自己Windows上建立Android开发环境投入Android浪潮的朋友们,为了确保大家能顺利完成开发环境的搭建,文章写的尽量详细,希望对准备进入Android开发的朋友有帮助。 Android开发环境搭建分为以下四步:第一步、安装JDK;第二步、安装Eclipse;第三步、下载并

    2022年7月23日
    12
  • PyCharm激活码永久有效PyCharm2018.3.7激活码教程-持续更新,一步到位[通俗易懂]

    PyCharm激活码永久有效PyCharm2018.3.7激活码教程-持续更新,一步到位[通俗易懂]PyCharm激活码永久有效2018.3.7激活码教程-Windows版永久激活-持续更新,Idea激活码2018.3.7成功激活

    2022年6月19日
    35
  • 什么是跨域问题?跨域解决问题

    什么是跨域问题?跨域解决问题一 为什么会出现跨域问题 出于浏览器的同源策略限制 同源策略是一种约定 它是浏览器最核心也是最基本的安全功能 如果缺少了同源策略 则浏览器的正常的功能可能会受到影响 跨域收是 Web 是构建在同源策略基础上的 浏览器只是针对同源策略的一种实现 同源策略会阻止一个域的 JavaScript 脚本和另一个域的内容进行交互 所谓同源 即指同一个域 就是两个页面具备同样的协议 protocol 主机 host 和端口号 port 跨域报错的原因请求是跨域的 并不一定会报错 普通的图片请求 css 文件请求是不

    2025年6月12日
    3
  • LaTeX 如何使用双引号,单引号[通俗易懂]

    LaTeX 如何使用双引号,单引号[通俗易懂]LaTeX如何使用双引号,单引号使用格式如下:“双引号”`单引号’示例:\documentclass{article}\author{MyName}\title{TheTitle}\begin{document} \maketitle `Thisissinglequotemark’ “Thisi

    2022年6月25日
    68

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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