如何让li在ul上面

来源:10-1 编程挑战

我们的洗手间

2016-03-23 19:55

从大家的提问中发现,把margin-bottom设为-2px就可以用li的下边框遮盖ul的下边框。但是我不管怎样试,都是ul的下边框遮盖了li的下边框。结果如图,代码如下

http://img.mukewang.com/56f284230001595104690073.jpg

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <title>实践题 - 选项卡</title>

    <style type="text/css">

    *{

        margin=0px;

        padding=0px;

        font: 10pt/13pt "微软雅黑", times;

    }

    .tab{overflow:hidden;padding:0px;border-bottom:2px solid #8B4513;}

    .tab li{float:left;

            width:70px;

            height:35px;

            line-height:35px;

            text-align:center;

            list-style-type:none;

            border:2px solid black;

            margin:0px 2px -2px 2px;


    }

       

    </style>

    <script type="text/javascript">

         

    // JS实现选项卡切换

    

    

    </script>

 

</head>

<body>

    <ul>

        <li>房产</li>

        <li>家居</li>

        <li>二手房</li>

</ul>

写回答 关注

3回答

  • 快乐崇拜tager
    2016-03-25 14:01:07
    已采纳

    要想让<li>元素border-bottom不显示的方法其实方法有很多。原则上都是让<li>在前遮住<ul>的底线就行。

    理论上用不用overflow:hidden对<li>是否在前都不会有影响。。overflow:hidden主要是用来隐藏溢出的内容,以及用来清除对父元素的浮动影响。

    用overflow:hidden当没有设置父元素高度时可以将父元素撑开,当设置父元素高度时,多于父元素高度的内容将被隐藏。。。。

    可以用diaplay:inblock;   position:等定位属性 ; float属性;都可以实现。让li 和ul的下边框重合,把li 的下边框颜色下设置成白色或底色就好了

    这是我的理解,希望能帮到你。。。

    快乐崇拜ta... 回复我们的洗手间

    很有道理哦,这个方法不错,受教了。 还有一个方法忘说了,直接用position:relative; z-index:20;来设置div在Z轴的分层,把要放在后面的div的Z-index的属性设置为负数就好了。不过要注意两个问题:1.必须在有position属性的情况下Z-index的属性才有效。2.不用写单位PX。

    2016-03-25 15:58:05

    共 2 条回复 >

  • smis137
    2016-03-23 21:16:13

    你的ul的class应该就是tab吧
    .tab li{ }里加一句border-bottom:none;去了下边框应该就成了


    共 1 条回复 >

  • smis137
    2016-03-23 21:09:56

    border-bottom:none;


JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468060 学习 · 21891 问题

查看课程

相似问题