当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > CSS dashed和dotted的区别

CSS样式表
base href 使用方法详解
html label标签的使用教程
使用CSS不用程序实现文字自动截断 用省略号代替
CSS hack实现 CSS完美兼容IE6/IE7/FF的通用方法
网页布局+纯CSS纵向下拉菜单 IE6/IE7兼容
CSS图片拼合生成器只需上传zip包即可
用iframe margin实现调用其他网页的某一区域的方法
用css alpha 滤镜 实现input file 样式美化代码
RGB 加成色 说明
为了防止乱码,请将用于页面编码的meta charset放到title的前面
DIV+CSS布局中不推荐使用的标签集合Dont Use These Tags
大家看了就明白了css样式中类class与标识id选择符的区别小结
DL.DT.DD实现左右的布局简单例子
css布局网页水平居中常用方法
使用CSS框架布局的缺点和优点小结
Web2.0下XHTML+CSS 设计需要注意的地方小结
table高级应用把表格进行到底(必看)
css强制换行 css强制不换行的css方法
Div CSS absolute与relative的区别小结
css实现文字垂直居中的代码

CSS样式表 中的 CSS dashed和dotted的区别


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 157 ::
收藏到网摘: n/a

最近的一个页面中碰到的,本来想用 border 来模拟设计图的虚线效果,但是很明显 border 效果不如设计图来的好看。顺便研究了下 dashed 和 dotted 的区别。

首先,从字面上来理解,dashed 和 dotted 都是指“虚线”,他们的不同在于:

dashed:来自 dash(破折号),由 dash 组成的虚线
dotted:来自 dot (点),由 dot 组成的虚线,也称点线

这里多说几句废话,其实参看下 demo,就能从视觉上获得更直观的感受了。
下面再说说相关的 bug 吧,当然了,这些 bug 再一次只是光荣地出现在了 IE 下,此处涉及到 IE6 和 IE7。

Bug1: 在 IE6 下,1px 宽的 dotted 表现的和 dashed 一样。当宽度大于 1px 时,表现正常。

dotted-1px

Bug2:在 IE7 下,当 4 条边的宽度是 1px 和 其它任意数值共存时,1px 的 dotted 表现的和 dashed 一样。4 条边的宽度全为 1px,或者为其它不是 1px 的不同值时不会出现这个 bug。

dotted-different-width

Bug3:另外,IE6 下,1px 的 dotted 或者 1px 的 dashed 边框,在拖动页面时,有时候边框会连成实线,有时候会出现缺口。

dotted-dashed

要解决这些 bug,要么直接就不用 dotted 而直接用 dashed;要么用图片代替;要么用额外标签和代码来解决。

鉴于只有在边框宽度为 1px 时才会出现这些 bug,可以设置外包围标签的边框宽度为 2px,通过增加一个内标签,设置其为 1px 的内容背景色边框,再通过设置 margin-top/right/bottom/left: -1px; 来盖掉外包围标签的 1px 边框,从视觉上实现正常效果。很啰嗦,很讨厌,很无奈。

.b6 {
border: 2px dotted #000;
padding-top: 0;
}
.b6 .inner {
border: 1px solid #9c9c9c;
width: 100%;
height: 100%;
margin: -1px;
position: relative;
z-index: 100;
}