巧用隐藏和负边距实现兼容所有浏览器的ul和li并列效果

  发布时间:2012-02-29 00:38:09   作者:佚名   我要评论
前天要做一个简单的效果,并列不定数个li。但就这样一个效果,弄了半天搞不定,最后不得不用hack,依然搞不定。如果大家对CSS感兴趣,可以看看效果图自己先试着做一次,然后看看兼容性

最终效果图如下:

最终效果

(我写两个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效果如下:

IE6不兼容

这里就可以看出来,一排li和多排li效果不一样的,一个有底部一个没底部。

IE7效果如下:

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;}

隐藏和负边距也一直在用,但结合起来用还是第一次,只能说自己用得还不够熟练啊!

相关文章

  • CSS3 实现文本与图片横向无限滚动动画效果

    这篇文章主要介绍了CSS3 实现文本与图片横向无限滚动动画,本文通过示例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2024-06-12
  • CSS实现苹果官网文字渐入效果(示例代码)

    这篇文章主要介绍了CSS实现苹果官网文字渐入效果(示例代码),文字是从左到有慢慢呈现出来,不是整体消失和出现,那么肯定不能使用透明度,结合示例代码讲解的非常详细,需要
    2024-06-12
  • CSS实现鼠标悬停图片放大的多种方法

    这篇文章主要介绍了CSS实现鼠标悬停图片放大的几种方法,使用css设置背景图片大小100%,同时设置位置和过渡效果,然后使用:hover设置当鼠标悬停时修改图片大小,实现悬停放
    2024-05-29
  • css3实现类似地图定位循环扩散光圈效果(最新推荐)

    这篇文章主要介绍了css3实现类似地图定位循环扩散光圈效果,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2024-05-24
  • CSS鼠标悬浮动画-hover属性详解

    这篇文章主要介绍了CSS鼠标悬浮动画-hover属性详解,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2024-05-24
  • CSS的Flexbox布局示例详解

    CSS Flexible Box Module是一种现代化的布局模式,用于创建响应式的一维布局(无论是水平还是垂直),下面给大家介绍Flexbox布局的一些关键概念和示例代码,感兴趣的朋友一
    2024-05-16
  • CSS中去掉li前面的圆点方法(常见方法汇总)

    在网页开发中,我们经常会使用无序列表(<ul>)来展示一系列的项目,默认情况下,每个列表项(<li>)前面都会有一个圆点作为标记,本文将介绍几种常见的方法来
    2024-05-16
  • CSS实现dom脱离文档流定位固定位置的操作代码

    在CSS中,要使一个DOM元素脱离正常的文档流并定位在页面的右顶部,你可以使用position属性,这篇文章主要介绍了CSS实现dom脱离文档流定位固定位置,需要的朋友可以参考下
    2024-04-30
  • stylus入门使用方法示例详解

    Stylus 是一个功能强大的 CSS 预处理器,能够让你的样式表开发变得更加高效和有趣,本文介绍stylus入门使用方法,感兴趣的朋友跟随小编一起看看吧
    2024-04-22
  • CSS中五种常见定位方式详解

    这篇文章主要为大家详细介绍了CSS中五种常见定位方式以及它们的具体应用,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以跟小编一起学习一下
    2024-04-22

最新评论