收藏CSS经典技巧


一、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,他们会使用缺省值,这点要记上。

二、同时使用两个类一般只能给一个元素设定一个类(Class),但这并不意味着不能用两个。事实上,你可以这样:<pclass="textside">...</p>同时给P元素两个类,中间用空格格开,这样所有text和side两个类的属性都会加到P元素上来。如果它们两个类中的属性有冲突的话,后设置的起作用,即在CSS文件中放在后面的类的属性起作用。

三、CSSborder的缺省值通常可以设定边界的颜色,宽度和风格,如:border:3pxsolid#000这位把边界显示成3像素宽,黑色,实线。但实际上这里只需要指定风格即可。如果只指定了风格,其他属性就会使用缺省值。一般地,Border的宽度缺省是medium,一般等于3到4个像素;缺省的颜色是其中文字的颜色。如果这个值正好合适的话,就不用设那么多了。

四、CSS用于文档打印许多网站上都有一个针对打印的版本,但实际上这并不需要,因为可以用CSS来设定打印风格。也就是说,可以为页面指定两个CSS文件,一个用于屏幕显示,一个用于打印:<linktype="text/css"rel="stylesheet"href="stylesheet.css"media="screen"/><linktype="text/css"rel="stylesheet"href="printstyle.css"media="print"/>第1行就是显示,第2行是打印,注意其中的media属性。但应该在打印CSS中写什么东西呢?你可以按设计普通CSS的方法来设定它。设计的同时就可以把这个CSS设成显示CSS来检查它的效果。也许你会使用display:none这个命令来关掉一些装饰图片,再关掉一些导航按钮。

五、图片替换技巧一般都建议用标准的HTML来显示文字,而不要使用图片,这样不但快,也更具可读性。但如果你想用一些特殊字体时,就只能用图片了。比如你想整个卖东西的图标,你就用了这个图片:<h1><imgsrc="widget-image.gif"alt="Buywidgets"/></h1>这当然可以,但对搜索引擎来说,和正常文字相比,它们对alt里面的替换文字几乎没有兴趣这是因为许多设计者在这里放许多关键词来骗搜索引擎。所以方法应该是这样的:<h1>Buywidgets</h1>但这样就没有特殊字体了。要想达到同样效果,可以这样设计CSS:h1{background:url(widget-image.gif)no-repeat;height:imageheighttext-indent:-2000px}注意把imageheight换成真的图片的高度。这里,图片会当作背景显示出来,而真正的文字由于设定了-2000像素这个缩进,它们会出现在屏幕左边2000点的地方,就看不见了。但这对于关闭图片的人来说,可能全部看不到了,这点要注意。

六、CSSbox模型的另一种调整技巧这个Box模型的调整主要是针对IE6之前的IE浏览器的,它们把边界宽度和空白都算在元素宽度上。比如:#box{width:100px;border:5px;padding:20px}这样调用它:<divid="box">...</div>这时盒子的全宽应该是150点,这在除IE6之前的IE浏览器之外的所有浏览器上都是正确的。但在IE5这样的浏览器上,它的全宽仍是100点。可以用以前人发明的Box调整方法来处理这种差异。但用CSS也可以达到同样的目的,让它们显示效果一致。#box{width:150px}#boxdiv{border:5px;padding:20px}这样调用:<divid="box"><div>...</div></div>这样,不管什么浏览器,宽度都是150点了。

七、块元素居中对齐如果想做个固定宽度的网页并且想让网页水平居中的话,通常是这样:#content{width:700px;margin:0auto}你会使用<divid="content">来围上所有元素。这很简单,但不够好,IE6之前版本会显示不出这种效果。改CSS如下:body{text-align:center}#content{text-align:left;width:700px;margin:0auto}这会把网页内容都居中,所以在Content中又加入了text-align:left。

八、用CSS来处理垂直对齐垂直对齐用表格可以很方便地实现,设定表格单元vertical-align:middle就可以了。但对CSS来说这没用。如果你想设定一个导航条是2em高,而想让导航文字垂直居中的话,设定这个属性是没用的。CSS方法是什么呢?对了,把这些文字的行高设为2em:line-height:2em,这就可以了。

九、CSS在容器内定位CSS的一个好处是可以把一个元素任意定位,在一个容器内也可以。比如对这个容器:#container{position:relative}这样容器内所有的元素都会相对定位,可以这样用:<divid="container"><divid="navigation"><a href=http://www.huitao.net>惠淘网</a></div></div>如果想定位到距左30点,距上5点,可以这样:#navigation{position:absolute;left:30px;top:5px}当然,你还可以这样:margin:5px0030px注意4个数字的顺序是:上、右、下、左。当然,有时候定位的方法而不是边距的方法更好些。

十、直通到屏幕底部的背景色在垂直方向是进行控制是CSS所不能的。如果你想让导航栏和内容栏一样直通到页面底部,用表格是很方便的,但如果只用这样的CSS:#navigation{background:blue;width:150px}较短的导航条是不会直通到底部的,半路内容结束时它就结束了。该怎么办呢?不幸的是,只能采用欺骗的手段了,给这较短的一栏加上个背景图,宽度和栏宽一样,并让它的颜色和设定的背景色一样。body{background:url(blue-image.gif)00repeat-y}此时不能用em做单位,因为那样的话,一旦读者改变了字体大小,这个花招就会露馅,只能使用px。

优质内容筛选与推荐>>
1、Python2.7-marshal
2、onclick或者其他事件在部分移动端无效的问题
3、java学习笔记4--对象的初始化与回收
4、ANT Notes
5、125年来二十个无法回答的科学问题(转)


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号