如何优化你的CSS代码?_CSS教程
教程Tag:暂无Tag,欢迎添加,赚取U币!
最近看过许多网友制作的SKIN的CSS文件,发现其中有着许多冗余的代码。下面我来跟大家介绍一下,如何清除这些冗余的代码,让你的CSS文件更加简洁。
一、margin、padding属性
参照相关资料我们可以知道,margin和padding代表的意思分别是外部边距和内部填充距离,在许多网友的CSS中,关于这两个属性的冗余代码是出现得最多的。比如:margin:0px,大家可以查看一下自己的CSS文件中,是否许多的margin:0px,其中有的是不需要的,你可以尝试删除它,当然也并不是所有的margin:0px都没有用,相同,padding:0px也一样。
另外,margin和padding中各项属性的顺序是:上右下左,你只要记住是顺时针方向就好了。我们再看看这两段代码:
其实他们的作用是一样的,下面的则是一种缩写,使用缩写我们可以减少CSS代码,并使阅读起来更为方便。(padding也相同。)
二、!important;属性
!important是CSS1就定义的语法,作用是提高指定样式规则的应用优先权。IE是不支持这个语法的,而其他的浏览器都支持,通过这一点,我们可以得知,设置了优先权的代码是不会被IE执行的。所以我们可以important的后面添加CSS样式,使其可以区别于IE和FireFox等浏览器。
上次在看Miles的CSS代码时,我看到了这样一句:
这里就是多余的了,我们可以这样写:height:50px就够了,这个错误在我刚开始制作CSS时也曾出现过。
三、text-align、font样式
这两个样式的作用我就不说了,但是这两个样式在许多网友的CSS中也存在许多冗余。下面我来举例说明一下,层的定义如下:
CSS文件如下(错误示例):
大家可以从上面的代码中轻易地看出,有许多的冗余代码,现在我们来书写正确的代码:
以上就是正确的代码,由于大家在制作SKIN时,对PJBLOG的DIV结构没搞清楚,才会出现这种错误。
四、display:none的使用
display:none的作用就是使被定义的层不显示。我们再来看看这段代码:
大家有没有觉得这有些多余呢,是的,既然设置了不显示,为何还要保留那些不必要的样式呢?出现这种情况我就知道,这个SKIN是改自某人的。
五、还是margin和padding
我还是通过例子来给大家说明,层的定义同上,以下是CSS的定义(错误示例):
现在我们再来书写正确的样式:
这里需要大家制作一下示例才能了解,首先#main{margin:5px 0px 5px 0px;}是没有必要的,他无非定义的就是整个页面的上、下外边距。(在一定场合下却需要这样书写)我们同样可以通过定义#body1的上边距和#body2的下边距来设置,所以才有了#body1{margin-top:17px ;}和#body2{margin:20px 0px ;}(这里定义的是#body2的上下边距为20px,左右边距为0px,也是缩写的一种方式。)
同样的道理,于是我们可以省略了#body1的下边距,在#content层在定义上边距,另外大家还需要先弄清楚层的嵌套关系,否则就会出错。
一、margin、padding属性
参照相关资料我们可以知道,margin和padding代表的意思分别是外部边距和内部填充距离,在许多网友的CSS中,关于这两个属性的冗余代码是出现得最多的。比如:margin:0px,大家可以查看一下自己的CSS文件中,是否许多的margin:0px,其中有的是不需要的,你可以尝试删除它,当然也并不是所有的margin:0px都没有用,相同,padding:0px也一样。
另外,margin和padding中各项属性的顺序是:上右下左,你只要记住是顺时针方向就好了。我们再看看这两段代码:
示例代码 [www.mb5u.com]
margin:0px 0px 0px 10px;
margin-left:10px;
margin-left:10px;
其实他们的作用是一样的,下面的则是一种缩写,使用缩写我们可以减少CSS代码,并使阅读起来更为方便。(padding也相同。)
二、!important;属性
!important是CSS1就定义的语法,作用是提高指定样式规则的应用优先权。IE是不支持这个语法的,而其他的浏览器都支持,通过这一点,我们可以得知,设置了优先权的代码是不会被IE执行的。所以我们可以important的后面添加CSS样式,使其可以区别于IE和FireFox等浏览器。
上次在看Miles的CSS代码时,我看到了这样一句:
示例代码 [www.mb5u.com]
height:50px !important;height:50px;
这里就是多余的了,我们可以这样写:height:50px就够了,这个错误在我刚开始制作CSS时也曾出现过。
三、text-align、font样式
这两个样式的作用我就不说了,但是这两个样式在许多网友的CSS中也存在许多冗余。下面我来举例说明一下,层的定义如下:
示例代码 [www.mb5u.com]
<div id="main">
<div id="body1">
<div id="content1">
</div>
</div>
<div id="body2">
</div>
<div>
<div id="body1">
<div id="content1">
</div>
</div>
<div id="body2">
</div>
<div>
CSS文件如下(错误示例):
示例代码 [www.mb5u.com]
#main{width:500px;text-algin:left;font-size:12px;color:#000000;}
#body1{width:500px;text-algin:center;font-size:12px;color:#FF0000;}
#content{text-algin:left;font-size:12px;color:#000000;}
#body2{text-algin:left;font-size:12px;color:#000000;}
#body1{width:500px;text-algin:center;font-size:12px;color:#FF0000;}
#content{text-algin:left;font-size:12px;color:#000000;}
#body2{text-algin:left;font-size:12px;color:#000000;}
大家可以从上面的代码中轻易地看出,有许多的冗余代码,现在我们来书写正确的代码:
示例代码 [www.mb5u.com]
#main{width:500px;text-algin:left;font-size:12px;color:#000000;}
#body1{text-algin:center;color:#FF0000;}
#content{width:300px;text-algin:left;color:#000000;}
#body2{}
#body1{text-algin:center;color:#FF0000;}
#content{width:300px;text-algin:left;color:#000000;}
#body2{}
以上就是正确的代码,由于大家在制作SKIN时,对PJBLOG的DIV结构没搞清楚,才会出现这种错误。
四、display:none的使用
display:none的作用就是使被定义的层不显示。我们再来看看这段代码:
示例代码 [www.mb5u.com]
#blogTitle{font-size:0px;margin:10px 3px 3px 40px;height:20px;color:#FFC1E6;display:none}
大家有没有觉得这有些多余呢,是的,既然设置了不显示,为何还要保留那些不必要的样式呢?出现这种情况我就知道,这个SKIN是改自某人的。
五、还是margin和padding
我还是通过例子来给大家说明,层的定义同上,以下是CSS的定义(错误示例):
示例代码 [www.mb5u.com]
#main{margin:5px 0px 5px 0px;}
#body1{margin:12px 0px 10px 0px;}
#content{margin:8px 0px 2px 0px;}
#body2{margin:10px 0px 15px 0px;}
#body1{margin:12px 0px 10px 0px;}
#content{margin:8px 0px 2px 0px;}
#body2{margin:10px 0px 15px 0px;}
现在我们再来书写正确的样式:
示例代码 [www.mb5u.com]
#main{}
#body1{margin-top:17px ;}
#content{margin:8px 0px 2px 0px;}
#body2{margin:20px 0px ;}
#body1{margin-top:17px ;}
#content{margin:8px 0px 2px 0px;}
#body2{margin:20px 0px ;}
这里需要大家制作一下示例才能了解,首先#main{margin:5px 0px 5px 0px;}是没有必要的,他无非定义的就是整个页面的上、下外边距。(在一定场合下却需要这样书写)我们同样可以通过定义#body1的上边距和#body2的下边距来设置,所以才有了#body1{margin-top:17px ;}和#body2{margin:20px 0px ;}(这里定义的是#body2的上下边距为20px,左右边距为0px,也是缩写的一种方式。)
同样的道理,于是我们可以省略了#body1的下边距,在#content层在定义上边距,另外大家还需要先弄清楚层的嵌套关系,否则就会出错。
相关CSS教程:
- 相关链接:
- 教程说明:
CSS教程-如何优化你的CSS代码?。