CSS基础(一)
1.CSS简介
在网页设计中,使用HTML标记属性对网页进行修饰的方式存在很大的局限和不足,如网站维护困难、不利于代码阅读等。如果希望网页美观、大方,并且升级轻松维护方便,就需要使用CSS实现结构与表现的分离。CSS以HTML为基础,提供了丰富的功能,如字体、颜色、背景的控制及整体排版等,而且还可以针对不同的浏览器设置不同的样式。
2.CSS样式规则
1.CSS样式中的选择器严格区分大小写,属性和值不区分大小写,按照书写习惯一般将 选择器、属性和值 都采用小写的方式。
2.多个属性之间必须用英文状态的分号隔开,最后一个属性的分号可以省略,但是,为了便于增加新样式最好保留。
3.如果属性的值由多个单词组成且中间包含空格,则必须为这个属性值加上英文状态下的引号。
示例:
4.在编写CSS代码时,为了提高代码的可读性,通常会加上CSS注释。
示例:
5.在CSS代码中空格时不被解析的,花括号及分号前后的空格可有可无。因此可以使用空格键、TAB键、回车键等对样式代码进行排版,即所谓的格式化CSS代码,这样可以提高代码的可读性。
示例:
下面的代码就要比上面的美观,可读性更高,但是在实际的项目中,上面的代码方式更为常见,减少项目体积,减少错误。
3.CSS的一些特点
1.丰富的样式定义
CSS提供了丰富的文档样式外观,以及设置文本和背景属性的能力;允许为任何元素创建边框,以及元素边框与其他元素间的距离,以及元素边框与元素内容间的距离;允许随意改变文本的大小写方式、修饰方式以及其他页面效果。
2.层叠性
简单的说,层叠就是对一个元素多次设置同一个样式,这将使用最后一次设置的属性值。例如对一个站点中的多个页面使用了同一套CSS样式表,而某些页面中的某些元素想使用其他样式,就可以针对这些样式单独定义一个样式表应用到页面中。这些后来定义的样式将对前面的样式设置进行重写,在浏览器中看到的将是最后面设置的样式效果。
3.继承性
一些属性和样式,如果在父代的元素设置了,子代以及后代的元素没有另外设置元素属性的话,就会继承父代的元素与属性。
4.多页面应用
CSS样式表可以单独存放在一个CSS文件中,这样我们就可以在多个页面中使用同一个CSS样式表。CSS样式表理论上不属于任何页面文件,在任何页面文件中都可以将其引用。这样就可以实现多个页面风格的统一。
5.页面压缩
在使用HTML定义页面效果的网站中,往往需要大量或重复的表格和font元素形成各种规格的文字样式,这样做的后果就是会产生大量的HTML标签,从而使页面文件的大小增加。而将样式的声明单独放到CSS样式表中,可以大大的减小页面的体积,这样在加载页面时使用的时间也会大大的减少。另外,CSS样式表的复用更大程度的缩减了页面的体积,减少下载的时间。
4.引入CSS样式表的方式
1.行内式
行内式也称为内联样式,是通过标记的style属性来设置元素的样式,其基本语法格式如下:
<标记名 style="属性1:属性值; 属性2: 属性值2; 属性3: 属性值3 ;"> 内容 </标记名>
该语法中style是标记的属性,实际上是任何HTML标记都拥有style属性,用来设置行内性。其中属性和值的书写规范与CSS样式规则相同,行内式只对其所在的标记及嵌套在其中的子标记起作用。
示例:
通过示例可以看出,行内式也是通过标记的属性来控制样式的,这样并没有做到结构与表现的分离,所以一般很少使用。只有在样式规则较少且只在该元素上使用一次,或者需要临时修改某个样式规则时使用。
2.内嵌式
内嵌式是将CSS代码集中写在HTML文档的<head>头部标记中,并且用<style>标记定义,其基本语法格式如下:
该语法中<style>标记一般位于<head>标记中的<title>标记之后,也可以把它放在HTML文档的任何地方。但是由于浏览器是从上往下解析代码的,把CSS代码放在头部便于提前被下载和解析,以避免网页内容下载后没有样式修饰带来的尴尬。同事必须设置type的属性值为 "text/css" ,这样浏览器才知道<style>标记包含的是CSS代码。
示例:
内嵌式CSS样式只是对其所在的HTML页面有效,因此,仅设计一个页面时,使用内嵌式是一个不错的选择。但如果是一个网站,不建议使用这种方式,因为它不能发挥CSS代码的重用优势。
3.链入式
链入是是将所有的样式放在一个或多个以.css为扩展名的外部样式表文件中,通过<link />标记将外部的=样式文件链接到HTML文档中,其基本语法格式如下。
该语法中,<link />标记需要放在<head>头部标记中,并且必须指定<link />标记的三个属性,具体如下:
1.href
定义所链接外部样式表文件的URL,可以是相对路径,也可以是绝对路径。
2.type
定义所链接文档的类型,在这里需要指定为“text/css”,表示链接的外部文件为CSS样式表。
3.rel
定义当前文档与被链接文档之间的关系,在这里需要指定为“stylesheet”,表示被链接的文档是一个样式表文件。
链入式最大的好处是同一个CSS样式表可以被不同的HTML页面链接使用,同时一个HTML页面也可以通过多个< link />标记链接多个CSS样式表,链入式是使用频率最高,也是最实用的CSS样式表。它将HTML代码与CSS代码分离为两个或多个文件文件,实现了结构和表现的完全分离,使得网页的前期制作和后期维护都十分方便。