十个不为人知的CSS技巧分别是什么
本篇文章为大家展示了十个不为人知的CSS技巧分别是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
创新互联公司是一家以重庆网站建设、网页设计、品牌设计、软件运维、成都网站推广、小程序App开发等移动开发为一体互联网公司。已累计为PE包装袋等众行业中小客户提供优质的互联网建站和软件开发服务。
向大家描述一下10个你未必知道的CSS技巧,比如CSS用于文档打印,许多网站上都有一个针对打印的版本,但实际上这并不需要,因为可以用CSS来设定打印风格。也就是说,可以为页面指定两个CSS文件,一个用于屏幕显示,一个用于打印。
10个你未必知道的CSS技巧
1.CSS字体属性简写规则
一般用CSS设定字体属性是这样做的:
font-weight:bold; font-style:italic; font-varient:small-caps; font-size:1em; line-height:1.5em; font-family:verdana,sans-serif;
但也可以把它们全部写到一行上去:
font:bolditalicsmall-caps1em/1.5emverdana,sans-serif;
真不错!只有一点要提醒的:这种简写方法只有在同时指定font-size和font-family属性时才起作用。而且,如果你没有设定font-weight,font-style,以及font-varient,他们会使用缺省值,这点要记上。
2.同时使用两个类
一般只能给一个元素设定一个类(Class),但这并不意味着不能用两个。事实上,你可以这样:
...
同时给P元素两个类,中间用空格格开,这样所有text和side两个类的属性都会加到P元素上来。如果它们两个类中的属性有冲突的话,后设置的起作用,即在CSS文件中放在后面的类的属性起作用。
补充:对于一个ID,不能这样写
3.CSS border的缺省值
通常可以设定边界的颜色,宽度和风格,如:
border:3pxsolid#000
这位把边界显示成3像素宽,黑色,实线。但实际上这里只需要指定风格即可。
如果只指定了风格,其他属性就会使用缺省值。一般地,Border的宽度缺省是medium,一般等于3到4个像素;缺省的颜色是其中文字的颜色。如果这个值正好合适的话,就不用设那么多了。
4.CSS用于文档打印
许多网站上都有一个针对打印的版本,但实际上这并不需要,因为可以用CSS来设定打印风格。也就是说,可以为页面指定两个CSS文件,一个用于屏幕显示,一个用于打印:
第1行就是显示,第2行是打印,注意其中的media属性。
但应该在打印CSS中写什么东西呢?你可以按设计普通CSS的方法来设定它。设计的同时就可以把这个CSS设成显示CSS来检查它的效果。也许你会使用display:none这个命令来关掉一些装饰图片,再关掉一些导航按钮。要想了解更多,可以看“打印差异”这一篇。
5.图片替换技巧
一般都建议用标准的HTML来显示文字,而不要使用图片,这样不但快,也更具可读性。但如果你想用一些特殊字体时,就只能用图片了。
比如你想整个卖东西的图标,你就用了这个图片:
这当然可以,但对搜索引擎来说,和正常文字相比,它们对alt里面的替换文字几乎没有兴趣这是因为许多设计者在这里放许多关键词来骗搜索引擎。所以方法应该是这样的:
Buywidgets
但这样就没有特殊字体了。要想达到同样效果,可以这样设计CSS:
h2{background:url(widget-image.gif) no-repeat;height:imageheighttext-indent:-2000px}
注意把imageheight换成真的图片的高度。这里,图片会当作背景显示出来,而真正的文字由于设定了-2000像素这个缩进,它们会出现在屏幕左边2000点的地方,就看不见了。但这对于关闭图片的人来说,可能全部看不到了,这点要注意。
6.CSSbox模型的另一种调整技巧
这个Box模型的调整主要是针对IE6之前的IE浏览器的,它们把边界宽度和空白都算在元素宽度上。比如:
#box{width:100px;border:5px;padding:20px}
这样调用它:
...
这时盒子的全宽应该是150点,这在除IE6之前的IE浏览器之外的所有浏览器上都是正确的。但在IE5这样的浏览器上,它的全宽仍是100点。可以用以前人发明的Box调整方法来处理这种差异。
但用CSS也可以达到同样的目的,让它们显示效果一致。
#box{width:150px}#boxdiv{border:5px;padding:20px}
这样调用:
...
这样,不管什么浏览器,宽度都是150点了。
7.块元素居中对齐
如果想做个固定宽度的网页并且想让网页水平居中的话,通常是这样:
#content{width:700px;margin:0auto}
你会使用
body{text-align:center} #content{text-align:left;width:700px;margin:0auto}
这会把网页内容都居中,所以在Content中又加入了text-align:left。
8.用CSS来处理垂直对齐
垂直对齐用表格可以很方便地实现,设定表格单元vertical-align:middle就可以了。但对CSS来说这没用。如果你想设定一个导航条是2em高,而想让导航文字垂直居中的话,设定这个属性是没用的。
CSS方法是什么呢?对了,把这些文字的行高设为2em:line-height:2em,这就可以了。
9.CSS在容器内定位
CSS的一个好处是可以把一个元素任意定位,在一个容器内也可以。比如对这个容器:
#container{position:relative}
这样容器内所有的元素都会相对定位,可以这样用:
...