CSS样式的主要特点及其类型

html-css09

CSS样式的主要特点及其类型,第1张

CSS(Cascading Stylesheets,层叠样式表)是一种制作网页的新技术,现在已经为大多数的浏览器所支持,成为网页设计必不可少的工具之一。

层叠样式表的特点

且不说过去的网页缺少动感,就是在网页内容的排版布局上也有很多困难,如果不是专业人员或特别有耐心的人,很难让网页按自己的构思和创意来显示信息。即便是掌握了HTML语言精髓的人也要通过多次地测试,才能驾驭好这些信息的排版,过程十分漫长和痛苦。为了Internet的发展,让更多人早日踏足这个多姿多彩的世界,新的HTML辅助工具呼之欲出。

样式表就是在这种需求下诞生的,它首先要做的是为网页上的元素精确地定位,可以让网页设计者象导演一样,轻易地控制由文字、图片组成的演员们,在网页这个舞台上按剧本要求好好地表演。

其次,它把网页上的内容结构和格式控制相分离。浏览者想要看的是网页上的内容结构,而为了让浏览者更好地看到这些信息,就要通过格式控制来帮忙了。以前两者在网页上的分布是交错结合的,查看修改很不方便,而现在把两者分开就会大大方便网页的设计者。内容结构和格式控制相分离,使得网页可以光由内容构成,而将所有网页的格式控制指向某个CSS样式表文件。这样一来的好出表现在两个方面:

第一,简化了网页的格式代码,外部的样式表还会被浏览器保存在缓存里,加快了下载显示的速度,也减少了需要上传的代码数量(因为重复设置的格式将被只保存一次)。

第二,只要修改保存着网站格式的CSS样式表文件就可以改变整个站点的风格特色,在修改页面数量庞大的站点时,显得格外有用。避免了一个一个网页的修改,大大减少了重复劳动的工作量,当你面对的是有数百个网页的站点时,CSS简直象是神对我们的恩赐!^_^

添加层叠样式表的方法

我们为网页添加样式表的方法有四种。

1.最简单的方法是直接添加在HTML的标识符(tag)里:

<Tag style=”properties”>网页内容</tag>

举个例子:

<p style=”color: bluefont-size: 10pt”>CSS实例</p>

代码说明:

用蓝色显示字体大小为10pt的“CSS实例”。尽管使用简单、显示直观,但是这种方法不怎么常用,因为这样添加无法完全发挥样式表的优势“内容结构和格式控制分别保存”。

2.添加在HTML的头信息标识符<head>里:

<head>

<style type=”text/css”>

<!-- 样式表的具体内容 -->

</style>

</head>

type=”text/css”表示样式表采用MIME类型,帮助不支持CSS的浏览器过滤掉CSS代码,避免在浏览器面前直接以源代码的方式显示我们设置的样式表。但为了保证上述情况一定不要发生,还是有必要在样式表里加上注释标识符“<!--注释内容-->”。

3、链接样式表

同样是添加在HTML的头信息标识符<head>里:

<head>

<link rel=”stylesheet” href=”*.css” type=”text/css” media=”screen”>

</head>

*.css是单独保存的样式表文件,其中不能包含<style>标识符,并且只能以css为后缀。

Media是可选的属性,表示使用样式表的网页将用什么媒体输出。取值范围:

·Screen(默认):输出到电脑屏幕

·Print:输出到打印机

·TV:输出到电视机

·Projection:输出到投影仪

·Aural:输出到扬声器

·Braille:输出到凸字触觉感知设备

·Tty:输出到电传打字机

·All:输出到以上所有设备

如果要输出到多种媒体,可以用逗号分隔取值表。

Rel属性表示样式表将以何种方式与HTML文档结合。取值范围:

·Stylesheet:指定一个外部的样式表

·Alternate stylesheet:指定使用一个交互样式表

4、联合使用样式表

同样是添加在HTML的头信息标识符<head>里:

<head>

<style type=”text/css”>

<!--

@import “*.css”

其他样式表的声明

-->

</style>

</head>

以@import开头的联合样式表输入方法和链接样式表的方法很相似,但联合样式表输入方式更有优势。因为联合法可以在链接外部样式表的同时,针对该网页的具体情况,做出别的网页不需要的样式规则。

需要注意的是:

·联合法输入样式表必须以@import开头。

·如果同时输入多个样式表有冲突的时候,将按照第一个输入的样式表对网页排版。

·如果输入的样式表和网页里的样式规则冲突时,使用外部的样式表。

css样式表有两种,一种是内部样式表,另一种是外部样式表。

此外还有一种html本身就有的样式书写方式叫内联样式。

好处是相对而言的,只有比较才能体现出优点。题主没有表述清楚问的是哪一种同哪一种比较,所以我推测你想问的应该是外部样式表相对内部样式表和内联样式的优点。

要理解外部样式表的优点,首先要理解其特点。外部样式表的特点是:

1,样式与html分离。

2,一份css样式可应用于多处html内容。

所以其好处是:

①写代码时,重复的样式代码只需要写一份,减少了工作量。

②写出来的代码文件更简洁(便于其它人阅读),且文件大小也比较小。

③代码文件传输时,能够节省网络流量和带宽。(因为文件更小,且重复的css样式会被存储在缓存中)

④代码文件渲染时,能够减少渲染时间。(因为文件更小)

⑤后期维护时,能减少维护时的工作量。因为只要修改css样式表文件,就能够改变很多网页,甚至改变整个站点的风格特色。避免了一个个网页去修改。

层叠 继承 优先级 是我们学习CSS 必须掌握的三个特性。

一、CSS层叠性

是指多种CSS样式的叠加,是浏览器处理冲突的一个能力,如果一个属性通过两个相同选择器设置到同一个元素上,那么这个时候一个属性就会将另一个属性层叠掉

比如先给某个标签指定了内部文字颜色为红色,接着又指定了颜色为蓝色,此时出现一个标签指定了相同样式不同值的情况,这就是样式冲突。

一般情况下,如果出现样式冲突,则会按照CSS书写的顺序,以最后的样式为准。

1.样式冲突,遵循的原则是就近原则。 那个样式离着结构近,就执行那个样式。

2.样式不冲突,不会层叠

3.CSS最后的执行口诀: 长江后浪推前浪,前浪死在沙滩上。

二、CSS继承性

所谓继承性是指书写CSS样式表时,子标签会继承父标签的某些样式,如文本颜色和字号。想要设置一个可继承的属性,只需将它应用于父元素即可。

简单的理解就是: 子承父业。

CSS最后的执行口诀: 龙生龙,凤生凤,老鼠生的孩子会打洞。

注意:

恰当地使用继承可以简化代码,降低CSS样式的复杂性。子元素可以继承父元素的样式(text-,font-,line-这些元素开头的都可以继承,以及color属性)

三、CSS优先级

定义CSS样式时,经常出现两个或更多规则应用在同一元素上,这时就会出现优先级的问题。在考虑权重时,初学者还需要注意一些特殊的情况,具体如下:

1.继承样式的权重为0。即在嵌套结构中,不管父元素样式的权重多大,被子元素继承时,他的权重都为0,也就是说子元素定义的样式会覆盖继承来的样式。

2.行内样式优先。应用style属性的元素,其行内样式的权重非常高,可以理解为远大于100。总之,他拥有比上面提高的选择器都大的优先级。

3.权重相同时,CSS遵循就近原则。也就是说靠近元素的样式具有最大的优先级,或者说排在最后的样式优先级最大。

4.CSS定义了一个!important命令,该命令被赋予最大的优先级。也就是说不管权重如何以及样式位置的远近,!important都具有最大优先级。