CSS Border 使用分享( 二 )


不过 IE 6/7 出现 bug:rc 在 IE 6 中依然显示为 dispaly: block,而 IE 7 中 top 和 bottom 缩成一坨,不肯扩展开来,而在 rc1/rc2/rc3 中插入文字 xxx 后只能扩展到文字宽度,不能与 bd 对齐 。
自适应圆角 2:

自 google 系产品的 1px 圆角按钮,三层 div,最外层 div1 正常设置边框宽度 1px,呈现出上下边框线,中间 div2 只设置左右边框,且把左右 margin 设置成负值,呈现出圆角处的 4 个圆点 内层 div3 同样只设置左右边框,同时 margin 上下空出 div2 的高度,margin 左右也设置与 div2 相同的负值 。
其他小问题
  • 透明:
IE 6 浏览器不支持 transparent 透明属性,就 border 生成三角技术而言,直接设置对应的透明边框的 border-style 属性为 dotted 或是 dashed 即可解决这一问题,原因是在 IE 6 下,点线与虚线均以边框宽度为基准,点线长度必须是其宽度的 3 倍以上(height >= border-width * 3),虚线宽长度必须是其宽度的 5 倍以上(height >= border-width * 5),否则点线和虚线都不会出现 。
  • IE 6 的奇偶 bug:
如果定位外框高度或是宽度为奇数,则 IE 6 下,绝对定位元素的低定位和右定位会有1像素的误差 。所以,尽量保证外框的高度或宽度为偶数值 。
  • IE 6 的空 div 高度 bug:
IE 6 下,空 div 会有莫名的高度,也就是说 height: 0 不顶用,此时形成的尖角的实际占高于其他浏览器是有差异的 。可使用 font-size: 0 + overflow: hidden 修复此问题 。
  • filter: chroma 滤镜
该属性属性可以设置一个对象中指定的颜色为透明色,如:
border-color: pink;filter: chroma(color=pink);希望本文能帮助到您!点赞+转发,让更多的人也能看到这篇内容(收藏不点赞,都是耍流氓-_-)
关注 {我},享受文章首发体验!
每周重点攻克一个前端技术难点 。更多精彩前端内容私信 我 回复“教程”
原文链接:https://fed.taobao.org/blog/2010/08/05/css-border-hack/
作者:admin




推荐阅读