用li标签和a标签实现导航的区域点击

(将a标签转换为块状元素即可实现区域点击)

第一篇PO~
最近在码页面,在编写导航的时候碰到了问题。众所周知,HTML内编写导航用ulli标签编写:

// nav
<div class="nav1">
<ul>
   <li>首页</li>
   <li>地区</li>
   <li>特惠</li>
   <li>资讯</li>
   <li>游记</li>
</ul>
</div>

在给nav一个横向显示的样式:

// nav style
<style>
       .nav1{
        	width:600px;
        	margin:0 auto;
        }
		ul{
            list-style-type: none;
            float: left;
            /*ul加浮动是因为一般导航左上角还有图片LOGO,此处未添加*/
		}
		ul li{
			height: 72px;
            width: 80px;
            text-align: center;
            /*导航li块内字体水平居中*/
            line-height: 72px;
            /*行高与li块高度一致使导航li内字体垂直居中*/
            color: #3c3d46;
            float: left;
            margin-right: 24px;
		}
		/*鼠标滑动效果*/
		li:hover{
            background-color:#5696ff;
            color:#fefeff;
            cursor: pointer;
        }
</style>

在这里插入图片描述
此时虽然鼠标滑过有效果,但是li标签无法进行链接,我们给li标签内增加a标签:

   <li><a href="./首页.html">首页</a></li>
   <li><a href="./地区.html">地区</a></li>
   <li><a href="./地区.html">特惠</a></li>
   <li><a href="./资讯.html">资讯</a></li>
   <li><a href="./游记.html">游记</a></li>

在这里插入图片描述
此时加入a标签,字体颜色可以用color修改,下划线可用text-decoration:none;删除,但是在进行点击的时候只有通过点击链接字如:首页才可进行跳转。而我们在访问页面的时候一般随意点击图上蓝色区域即可跳转,所以需将a标签拉伸与li标签同款高。

众所周知,a标签是行内元素,而行内元素无宽高,可以通过display:block; 将行内元素转为块状元素,同时刚设的li标签样式:

<style>
a{
    width: 80px;
    height:72px;
    color: #3c3d46;
    text-decoration: none;
    display: block;
		}
</style>

这样随意点击蓝色区域即可跳转。

完整代码:

<!DOCTYPE html>
<html>
<head>
	<title></title>
	<style>
	    body{
	    	margin:0;
	    }
        .nav1{
        	width:600px;
        	margin:0 auto;
        }
		ul{
            list-style-type: none;
            float: left;  
		}
		ul li{
            float: left;
            margin-right: 24px;
		}
		a{
            width: 80px;
            height:72px;
            color: #3c3d46;
            text-align: center;
            line-height: 72px;
            text-decoration: none;
            display: block;

		}
    
		li a:hover{
            background-color:#5696ff;
            color:#ffffff;
            cursor: pointer;
        }
	</style>
</head>
<body>
<div class="nav1">
<ul>
   <li><a href="./首页.html">首页</a></li>
   <li><a href="./地区.html">地区</a></li>
   <li><a href="./地区.html">特惠</a></li>
   <li><a href="./资讯.html">资讯</a></li>
   <li><a href="./游记.html">游记</a></li>
</ul>
</div>
</body>
</html>

这是我使用的方法,如果有更简单的请推荐我~

猜你喜欢

转载自blog.csdn.net/weixin_44214142/article/details/85197835