CSS入门教程-样式表的基本语法(二)

发布时间:2019-12-25编辑:脚本学堂
CSS入门教程-样式表的基本语法(二),class和id是CSS中非常重要的内容。

class和id是CSS中非常重要的内容。

class(类)和id的一个小实例

在上一节中我们了解了如何为特定的标签定义样式,例如我们利用 “h1{font-size: 12px;}”将页面内所有的标题1的字体大小改为了12像素。那么如果我不希望所有的标题1样式都被修改该怎么做呢?这时class和id就可以帮你的忙。
为了了解class和id,我们先来看两个网页。

没有加入CSS时的页面加入CSS之后的页面。它们的源代码如下,红色字体的是我们本节将要学习的部分:

复制代码 代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <title>演示CSS!</title>
 <meta http-equiv="Content-Type"
 content="text/html; charset=gb2312" />
 </head>
 <body>
 <h1>我是页面最上端的标题1</h1>
 <h1>我是页面左侧的标题1,用来导航</h1>
 <h1>我是页面右侧新闻的标题1</h1>
 <p>我是新闻的内容。</p>
 </body>
 </html>

复制代码 代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <title>演示CSS!</title>
 <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
 <style type="text/css">
 <!--
   h1.dabiaoti {
   font-weight: bolder;
   text-align: center;
   }
   h1#daohang {
   font-size: 12px;
   font-weight: bolder;
   text-align: left;
   }
   h1.xinwen {
   font-size: 16px;
   font-weight:bold;
   text-align: center;
   color:green;
   }
   -->
 </style>
 </head>
 <body>
 <h1 class="dabiaoti">我是页面最上端的标题1</h1>
 <h1 id="daohang">我是页面左侧的标题1,用来导航</h1>
 <h1 class="xinwen">我是页面新闻的标题1</h1>
 <p class="xinwen">我是新闻的内容。</p>
 </body>
 </html>

class和id的用法

上面的例子应用class和id实现了3种不同的标题1。下面我们就来讲讲class和id的具体应用规则。
指定标签的class和id

首先我们要在<head>部分定义class(类)或id。

class的定义方法: 指定标签.类名 {样式}

id的定义方法:指定标签#id名 {样式}

然后我们在想要应用类的标签上加上class(类)或者id属性:

class的应用方法:<指定标签 class="类名">

id的应用方法:<指定标签 id="id名">

这种方式定义的class(类)和id只能作用于指定标签。在上面的例子中我们定义了三个类,类名分别为"dabiaoti"、"daohang"和"xinwen",它们均作用于h1标签。当我们试图将其中“xinwen”的样式应用于一个<p>标签的时候(<p class="xinwen">我是新闻的内容。</p>),您会看到它的样式没有发生任何改变。这是一种错误的CSS应用。

注意:类名和id名不可以用数字开头。
不指定标签的类或id

在网页设计的过程中,你可能不希望你定义的类只局限于一个标签。就拿上面的例子来说,你可能希望xinwen类可以应用于段落标签<p>。那么你只需要将定义部分的h1.xinwen改为.xinwen,即去掉h1。这种定义中不含标签名的类当然也就不再局限于某一个标签了。看看我们修改之后的网页,“新闻的内容”也应用了xinwen类的样式。

class(类)与id的区别

到这里你也许要问了,class和id看起来除了一个.#的区别之外,无论在定义上还是在应用上似乎都是一模一样啊?然而事实上并不如此,同一id在一个页面内只能应用一次,而class则是用于描述多次出现的元素。这从它们的名称上很容易理解。id就类似元素的省份证号码,它必须是唯一的,而class则是一类具有共同属性的元素的合称,是一类。如果你试图在一个一面内多次使用同一个id,页面通常是可以正常显示的。但是这会给后期的维护带来不便,还可能造成其它的问题。所以我们一定要区分开id和class,并且合理的应用它们。