第1章 HTML和CSS概述
一.在HTML中引入CSS的方法
HTML与CSS是两个作用不同的语言,它们同时对一个网页产生作用,因此必须通过一些方法,将CSS与HTML挂接在一起,才能正常工作。
在HTML中,引入CSS的方法主要有行内式、内嵌式、导入式和链接式4种。
1.行内式
行内式即在标记的style属性中设定CSS样式,这种方式本质没有体现出CSS的优势,因此不推荐使用。
2.嵌入式
嵌入式则将对页面中各种元素的设置集中写正在<head>和</head>之间,对于单一的网页,这种方式很方便。但是对于一个包含很多页面的网站,如果每个页面都以内嵌方式设置各自的样式,就失去了CSS带来的巨大优点,因此一个网站通常都是编写一个独立的CSS样式表文件,使用以下两种方式的一种,引入HTML文档中。
3.导入式与链接式
导入式和链接式的目的都是讲一个独立的CSS文件引入HTML文件,二者的区别不大。
(一)不同之处
①事实上,两者最大的区别在于链接式使用HTML的标记引入外部CSS文件,而使用导入式则是使用CSS的规则引入外部CSS文件。因此它们的用法也不同。
(1)如果使用链接式,则需要使用如下语句引入外部CSS文件。
<link href="mystyle.css" rel="stylesheet" type="text/css">
(2)如果使用导入式,则使用如下语句。
<style type="text/css">@import "mystyle.css"</style>
基本选择器有标记选择器、类别选择器和ID选择器3种。
1.标记选择器
一个HTML页面由很多不同的标记组成,CSS标记选择器用来声明那些标记采用哪种CSS样式。因此,每一种HTML标记的名称都可以作为相应的标记选择器的名称。
如:h1 { color:Red; }
如:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>CSS页面</title>
<style type="text/css">
.main
{
border: 2px solid black;
color:red;
}
</style>
</head>
<body>
<div class="main">
计算机信息资源管理
</div>
</body>
</html>
ID选择器的使用方法与class选择器基本相同;不同之处在于ID选择器只能在HTML页面中使用一次,因此其针对性更前。
如:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<style type="text/css">
#mainDiv
{
border: 2px solid black;
color:red;
background-color:Green;
}
</style>
</head>
<body>
<div id="mainDiv">
计算机信息资源管理
</div>
</body>
</html>
1.“交集”选择器
“交集”复合选择器由两个选择器直接链接构成,其结果是选中两者各自元素范围的交集。其中第一个必须是标记选择器,第二个必须是类别选择器或者ID选择器。这两个选择器之间不能有空格,必须连续书写。
如:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<style type="text/css">
p
{
color: Black;
}
p.special
{
color: Red;
}
.special
{
color: Yellow;
}
</style>
</head>
<body>
<p>
计算机信息资源管理
</p>
<p class="special">
计算机信息资源管理
</p>
<h2 class="special">
计算机信息资源管理
</h2>
</body>
</html>
如:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<style type="text/css">
p, h1, h2, .divClass, #divID
{
color: Red;
}
</style>
</head>
<body>
<p>
实例文字p</p>
<h1>
实例文字h1</h1>
<h2>
实例文字h2</h2>
<div class="divClass">
实例文字div class</div>
<div id="divID">
实例文字div ID</div>
</body>
</html> 运行结果:文字全为红色。
种CSS样式,但又不希望逐个来声明的情况,可以使用全局选择器“*”。
如:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<style type="text/css">
*
{
color: Red;
}
</style>
</head>
<body>
<p>
实例文字p</p>
<h1>
实例文字h1</h1>
<h2>
实例文字h2</h2>
<div class="divClass">
实例文字div class</div>
<div id="divID">
实例文字div ID</div>
埃及基金法司法局司法局
</body>
</html> 运行结果:全为红色;
记时,就可以使用后代选择器进行相应的控制。后代选择器的写法就是把外层的标记写在前面,内层的标记写在后面,之间用空
格分隔,当标记发生嵌套时,内层的标记就成为外层标记的后代。
如:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<style type="text/css">
p span
{
color: Red;
}
span
{
color: yellow;
}
</style>
</head>
<body>
<p>
<span>嵌套span中的实例文字</span>
</p>
<span>单独span中的实例文字</span>
</body>
</html>
运行结果:第一行是红色,第二行是黄色。
例如:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<style type="text/css">
p span
{
color: Red;
}
</style>
</head>
<body>
<p>这是最外层的文字
<span>这是中间层的文字<b>这是最内层的文字</b></span>
</p>
</body>
</html>
运行结果:
产生新的样式,而子标记的样式风格完全不会影响父标记。
CSS的继承贯穿整个CSS设计的始终,每个标记都要都要遵循着CSS继承的概念。
冲突问题,由此出现优先级高低的问题等,这种情况叫做CSS的层叠性。
行内样式>ID样式>类别样式>标记样式