当前位置:首页 >> 网页制作

CSS常见11条技巧与经验收集

1.如何清除图片下方出现几像素的空白间隙?

复制代码代码如下:
方法1:
img{display:block;}
方法2:
img{vertical-align:top;}
备注:除了top值,还可以设置为text-top
| middle | bottom | text-bottom,甚至特定的<length>和<percentage>值都可以
方法3:
#test{font-size:0;line-height:0;}
备注:#test为img的父元素

2.如何让超链接访问后和访问前的颜色不同且访问后仍保留hover和active效果?

复制代码代码如下:
方法:
a:link{color:#03c;}
a:visited{color:#666;}
a:hover{color:#f30;}
a:active{color:#c30;}
备注:按L-V-H-A的顺序设置超链接样式即可,可速记为LoVe(喜欢)HAte(讨厌)

3.为什么Standard mode下IE无法设置滚动条的颜色?

复制代码代码如下:
方法:
html{
scrollbar-3dlight-color:#999;
scrollbar-darkshadow-color:#999;
scrollbar-highlight-color:#fff;
scrollbar-shadow-color:#eee;
scrollbar-arrow-color:#000;
scrollbar-face-color:#ddd;
scrollbar-track-color:#eee;
scrollbar-base-color:#ddd;
}
备注:将原来设置在body上的滚动条颜色样式定义到html标签选择符上即可

4.如何使文本溢出边界不换行强制在一行内显示?

复制代码代码如下:
方法:#test{width:150px;white-space:nowrap;}
备注:设置容器的宽度和white-space为nowrap即可,其效果类似<nobr>标签

5.如何使文本溢出边界显示为省略号?

复制代码代码如下:
方法(此方法Firefox5.0尚不支持):
#test{width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
备注:首先需设置将文本强制在一行内显示,然后将溢出的文本通过overflow:hidden截断,并以text-overflow:ellipsis方式将截断的文本显示为省略号。

6.如何使连续的长字符串自动换行?

复制代码代码如下:
方法:#test{width:150px;word-wrap:break-word;}
备注:word-wrap的break-word值允许单词内换行

7.如何去掉超链接的虚线框?

复制代码代码如下:
方法:a{outline:none;}
备注:IE7及更早浏览器由于不支持outline属性,需要通过js的blur()方法来实现,如<a
onfocus="this.blur();"...

8.标准模式Standard mode和怪异模式Quirks mode下的盒模型区别?

复制代码代码如下:
方法:
标准模式下:Element
width = width + padding + border
怪异模式下:Element
width = width
备注:相关资料请参阅CSS3属性box-sizing

9.如何在文本框中禁用中文输入法?

复制代码代码如下:
方法:input,textarea{ime-mode:disabled;}
备注:ime-mode为非标准属性,写该文档时只有IE和Firefox支持

10.如何让层在falsh上显示?

复制代码代码如下:
方法:<param
name="wmode" value="transparent" />
备注:设置flash的wmode值为transparent或opaque

11.如何设置IE下的iframe背景透明?

复制代码代码如下:
方法:
设置iframe元素的标签属性allowtransparency="allowtransparency"然后设置iframe内部页面的body背景色为transparent。不过由此会引发IE下一些其它问题,如:设置透明后的iframe将不能遮住select