新增加的HTML扩充

[入库:2005年8月19日] [更新:2007年3月24日]

本文简介:选择自 web_gus 的 blog

新增加了一些html扩充以支持样式表。这些扩充允许在html文档中包含样式表,允许html文档链接外部样式表,允许css规则与某一类单元相关联。
  仅少数html扩充是必须的:三个新单元:stylespan 和具有属性 rel="stylesheet" 的 link;三个新属性:classidstyle——这些属性被很多 body 类单元所用。

  1.link单元:引用外部样式表

  link 的属性包括 href、id、rel、rev、title、type。link是一个空的 head 级单元,描述文档和其它文档或资源的关系。属性rel或rev,二者必选其一,定义link所链接的两个资源之间的关系;强制属性href包含着第二个资源的url。其余属性(id、title、type)是可选的。id值可以是名称别名,从原理上讲,允许将link单元本身当作超文本链接的目标;title值可以是描述链接目标的字符串。type给出目标资源的mime类型,例如html文档的mime类型是“text/html”。
  为了引用样式表,link单元的正确格式为:
  <link rel="stylesheet" type="mime/type" href="url">
  赋值 rel="stylesheet" 表明目标资源是一张样式表。“mime/type”是样式表的mime类型。因此,type允许使用各种不同的样式表语言。对于css样式表来说,正确的mime类型赋值为:type="text/css"。对dsssl样式表而言,正确的赋值为“application/dsssl”,而对 javascript accessible 而言,其值为“application/javascript”。
  要注意的是,一个文档可以包含不止一个引用外部样式表的link单元。

  2.style单元

  style包含作用于文档的样式表指令。style 单元包含两个可选的属性:title、type。title的值是与样式表相关联的主题。如果在文档中应用了多张样式表,title可以用作是样式表的标签,用户可以选择使不同的样式表无效。但目前还没有浏览器提供此功能。type给出了样式表内容的mime类型。
  style单元允许把格式化信息放置在当前文档中,而不是放置在通过link单元所引用的第二个文件中。因此,style单元可用于那些支持样式表而不支持link单元的浏览器。style还另有两个很重要的用途:开发和测试一张样式表;定制一张外部样式表。因此,可通过style单元进行小范围的、局部的修改而更多的布局细节由所链接的外部样式表完成。

  3.span单元:选择具有特别样式的文本

  用法:<span>....</span>
  span用于标记由相关联样式表定义其特别样式的文本。在无样式表指令的情况下,span不会影响样式。可以将span看作是对font在一般意义上的替代。
  span具有三个可选的属性——class、id、style。这些属性是为了支持样式表而增加的,它们几乎被所有的正文类单元所支持。

  4.class属性

  用法:class="(name)"(可选)
  class指定单元的类名,它使单元子类化(subclassing)称为可能。多种单元可以具有相同的class属性值。因此,子类化对于结构化文档非常有用。css样式表可以指定规则用于所有具有特定类值的单元,或用于具有特定类值的某一单元。类值在选择符中有所反映,其前面加以一句点(选择符是规则的一部分,它表明规则用于哪些单元)。
  注意:单元名和类值是由句点分隔开的。当类值本身包含句点时,这种用法将带来一些问题。css语法规则使用反斜线来“逃避”类似句点这样的特殊字符。例如,有这样的赋值“class=nacs.lisp”,它在css选择符中应表示为:“.nacs\.lisp”。然而,这种逃避机制并没有受到广泛的支持。

  4.id属性

  用法:id="(name)"(可选)
  id唯一指定单元标识符。也就是说,同一文档中,没有两个单元的id值是相同的。这一点正好与class相反,不同的单元可以有相同的class值。css样式表可以指定用于特定id或具有特定id值的单元的规则。在选择符中,id值前带有一个“#”号。
  从原理上讲,以id标识的单元可以作为超文本链接的目标:id最初设计的作用与定位单元的name属性是一样的。然而,当前的多数浏览器不支持这种做法。
  同class一样,id值包含句点会导致某些问题,因为css句法分析器会将句点看成是class属性值的起始标志。

  5.style属性

  用法:style="(css声明)"(可选)
  style属性包含样式表指令,这些指令将作用于与之相关联的单元内容。使用style属性避免了文档头对style单元的需要,同时也是消除html标记中的局部样式表指令的方法之一。注意,这种方法不值得提倡,较好的方式是,将所有的样式表指令放在一个style单元或者是放在一个被链接的外部样式表文件中。
  赋给style的值必须是由分号分隔的有效的css声明。注意,某些声明是需要引号的。因为在style属性值两边使用双引号可能会引起冲突,所以必须用单引号把放置在style中的css特性包括起来。

  6.简单伪类选择符

  伪类选择符与类选择符类似,只是它其中的那些类似于类的信息与 html class 的属性值没有关系。伪类信息来自于浏览器自身,所包含的信息与文档的状态或文档中特定单元的状态有关。css1 只定义了三个伪类:link,表明超文本定位符还没有被用户访问过;visited,表明超文本定位符先前被用户访问过;active,表明是活动的链接,也即,链接正被用户选择。
  css通过连接类名和单元名的分隔符来区分伪类和真正的类——对于伪类,分隔符是一个冒号(:)。这样,css1中的三个可能的伪类选择符是:a:link,a:visiter,a:active。选择符不能包含多个伪类,象 a:link:active 这样的选择符是非法的。
  伪类和一个普通的类选择符可以组合在一起,其一般形式如下:
    name.calss : pseudoclass
  其中,name是单元名,class 是类名,pseudoclass 是伪类名。注意类名必须最先出现,其后才是伪类名。

本文关键:新增加的HTML扩充
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top