CSS基础学习二:如何创建 CSS
最后更新于:2022-04-01 11:29:11
说到底如何创建CSS,就是要说HTML和CSS以怎样的方式结合?如何插入样式表,这是HTML和CSS结合最重
要的问题。当读到一个样式表时,浏览器会根据它来格式化 HTML 文档。
插入样式表的方法有四种:
### 一,style属性方式(内联样式)
利用标签中的style属性来改变每个标签的显示样式。每一个HTML标签中都有style样式属性,该属性的值就是
CSS语言代码。下面简单的说明一下:
~~~
<span style="font-size:18px;"><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>HTML与CSS结合一</title>
</head>
<body style="background-image:url(../Documents/我的第一个网站/4.jpg)">
<p style="background-color:#FF0000;color:#FFFFFF">这是一个段落1</p>
<p style="color:#FF0000;margin-left:20px">这是一个段落2</p>
<hr style="color:sienna"/>
<p style="color:#FF0000;margin-left:20px">这是一个段落3</p>
<p style="color:sienna;margin-left:20px">This is a paragraph</p>
</body>
</html></span>
~~~
显示的结果为:
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-28_572155937f174.jpg)
该方式比较灵活,但是对于多个相同标签的同一样式比较麻烦,适合局部修改。由于要将表现和内容混杂在一
起,内联样式会损失掉样式表的许多优势。请慎用这种方法,例如当样式仅需要在一个元素上应用一次时。要使用内
联样式,你需要在相关的标签内使用样式(style)属性。Style 属性可以包含任何 CSS 属性。
### 二,style标签方式
在<head>标签中加入<style>标签,对多个标签进行统一修改。
~~~
<span style="font-size:18px;"><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>HTML与CSS结合二</title>
<style type="text/css">
body {background-image:url(../Documents/我的第一个网站/4.jpg)
}
p {color:#FF0000;
margin-left:20px;
}
hr{color:sienna;
}
</style>
</head>
<body>
<p style="background-color:#FF0000;color:#FFFFFF">这是一个段落1</p>
<p>这是一个段落2</p>
<hr/>
<p>这是一个段落3</p>
<p style="color:sienna;margin-left:20px">This is a paragraph</p>
</body>
</html></span>
~~~
显示的结果为:
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-28_572155937f174.jpg)
该方式可以对单个页面的样式进行统一设置,但对于局部不够灵活。
### 三,内部样式表
当单个文档需要特殊的样式时,就应该使用内部样式表。这个也需要在<style>标签内完成,只是HTML语言和
CSS语言就不在同一个文档内,需要独立出CSS文件。将网页显示的内容和样式真正分离,HTML主要负责网页显示
的内容,CSS层叠样式表主要负责网页的样式显示。
HTML代码:
~~~
<span style="font-size:18px;"><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>HTML与CSS结合三</title>
<style type="text/css">
@import url(4.css);
</style>
</head>
<body>
<p style="background-color:#FF0000;color:#FFFFFF">这是一个段落1</p>
<p>这是一个段落2</p>
<hr/>
<p>这是一个段落3</p>
<p style="color:sienna;margin-left:20px">This is a paragraph</p>
</body>
</html></span>
~~~
CSS代码(4.css):
~~~
<span style="font-size:18px;">/* CSS Document */
body {background-image:url(../Documents/我的第一个网站/4.jpg)
}
p {color:#FF0000;
margin-left:20px;
}
hr{color:sienna;
}</span>
~~~
运行的结果为:
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-28_572155937f174.jpg)
### 四,外部样式表
对于第三种结合方式还是有一定的缺点,如果要对整个网页进行分区域的样式显示,也会造成大量的代码输入,
很麻烦。这就出现了第四种结合方式——外部样式表。
先来说明一下为何出现这种目前最流行的结合方式。
HTML代码:
~~~
<span style="font-size:18px;"><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title></title>
<style type="text/css">
@import url(4.css);
@import url(5.css);
@import url(6.css);
</style>
</head>
<body>
<p style="background-color:#FF0000;color:#FFFFFF">这是一个段落1</p>
<p>这是一个段落2</p>
<hr/>
<p>这是一个段落3</p>
<p style="color:sienna;margin-left:20px">This is a paragraph</p>
<div>这是一个div区域1</div>
<div>这是一个div区域2</div>
<span>这是一个span区域1</span>
<span>这是一个span区域2</span>
</body>
</html></span>
~~~
CSS代码(5.css和6.css):
~~~
/* CSS Document */
div {background-color:#0000FF;
color:#FFFF00;
}
~~~
~~~
/* CSS Document */
span {background-color:#00FFFF;
color:#FF0000;
}
~~~
如果大量的增加CSS文件,在style标签内也会引入大量的CSS文件。如果可以把这些CSS文件整合在一个CSS
文件中,也是可以的。
~~~
<span style="font-size:18px;"><span style="font-size:18px;">/* CSS Document */
@import url(4.css);
@import url(5.css);
@import url(6.css);</span></span>
~~~
或CSS代码:
~~~
<span style="font-size:18px;">/* CSS Document */
body {background-image:url(../Documents/我的第一个网站/4.jpg)
}
p {color:#FF0000;
margin-left:20px;
}
hr{color:sienna;
}
div {background-color:#0000FF;
color:#FFFF00;
}
span {background-color:#00FFFF;
color:#FF0000;
}</span>
~~~
在进行在style标签内引入:<style type="text/css">
@import url(7.css);
</style>
运行的结果完全相同。
还有就是利用link标签引入CSS文件,这就是所要说的第四种结合方式,也是我们最常用的方式,HTML文件和
CSS文件分开进行写入,最后在HTML中利用link标签引入CSS文件。运行的结果完全一样。
~~~
<span style="font-size:18px;"><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>HTML与CSS结合四</title>
<link rel="stylesheet" href="7.css" type="text/css" />
</head>
<body>
<p style="background-color:#FF0000;color:#FFFFFF">这是一个段落1</p>
<p>这是一个段落2</p>
<hr/>
<p>这是一个段落3</p>
<p style="color:sienna;margin-left:20px">This is a paragraph</p>
<div>这是一个div区域1</div>
<div>这是一个div区域2</div>
<span>这是一个span区域1</span>
<span>这是一个span区域2</span>
</body>
</html></span>
~~~
当样式需要应用于很多页面时,外部样式表将是理想的选择。在使用外部样式表的情况下,你可以通过改变一
个文件来改变整个站点的外观。每个页面使用 <link> 标签链接到样式表。<link> 标签在(文档的)头部。外部样式表
可以在任何文本编辑器中进行编辑。文件不能包含任何的 html 标签。样式表应该以 .css 扩展名进行保存。
最后一个问题也很重要,必须理解:
多重样式
如果某些属性在不同的样式表中被同样的选择器定义,那么属性值将从更具体的样式表中被继承过来。
例如,外部样式表拥有针对 h3 选择器的三个属性:
h3 {
color: red;
text-align: left;
font-size: 8pt;
}
而内部样式表拥有针对 h3 选择器的两个属性:
h3 {
text-align: right;
font-size: 20pt;
}
假如拥有内部样式表的这个页面同时与外部样式表链接,那么 h3 得到的样式是:
color: red;
text-align: right;
font-size: 20pt;
即颜色属性将被继承于外部样式表,而文字排列(text-alignment)和字体尺寸(font-size)会被内部样式表中的规则取代。
总而言之,一般原则由上而下,由外到内,由低级到高级。但也有例外!