今天小编跟大家讲解下有关巧用隐藏和负边距实现兼容所有浏览器的ul和li并列效果 ,相信小伙伴们对这个话题应该有所关注吧,小编也收集到了有关巧用隐藏和负边距实现兼容所有浏览器的ul和li并列效果 的相关资料,希望小伙伴们看了有所帮助。
最终效果图如下:
(我写两个ul的原因是li只有一排和多排效果会不一样)
首先看我的写法 HTML很简单 就不贴了 只贴CSS代码 DEMO:
ul{overflow:hidden;zoom:1;background:#ddd;width:440px;margin-bottom:50px;margin-left:auto;margin-right:auto}li{float:left;display:inline;width:100px;height:100px;line-height:100px;text-align:center;margin:0 5px 10px;background:#aaa;}大家可以打开上面的DEMO看效果 IE8、Chrome、FF都没问题 IE6效果如下:
这里就可以看出来 一排li和多排li效果不一样的 一个有底部一个没底部。
IE7效果如下:
IE7直接都没底部了。
在CSS群里讨论了大半天的时间 网友提出各种各样的方法 最后一位叫朵斯提的朋友 他的方法可以说是完美解决吧。DEMO
他的解决方法是在ul外面加div 然后把一直习惯li左右下边距改为上左右边距。上面多出来的边距用div隐藏 然后ul向上负边距 把上面多余的彻底盖住。基本思路就是这样 听不懂我说的可以看看核心CSS代码:复制代码代码如下: div{overflow:hidden;zoom:1;}ul{overflow:hidden;zoom:1;margin-top:-10px;padding-bottom:10px;background:#ddd;width:440px;margin-bottom:50px;margin-left:auto;margin-right:auto;}li{float:left;display:inline;width:100px;height:100px;line-height:100px;text-align:center;margin:10px 5px 0;background:#aaa;} 隐藏和负边距也一直在用 但结合起来用还是第一次 只能说自己用得还不够熟练啊!
来源:爱蒂网