CSS 设计彻底研究(一)(X)HTML与CSS核心基础

时间:2023-12-04 22:00:20

第1章 (X)HTML与CSS核心基础

  这一章重点介绍了4个方面的问题。先介绍了 HTML和XHTML的发展历程以及需要注意的问题,然后介绍了如何将CSS引入HTML,接着讲解了CSS的各种选择器,及其各自的使用方法,最后中袋说明了CSS的继承与层叠特性,以及它们的作用。

1.1 HTML与XHTML

  HTML与XHTML是一种语言的不同阶段,类似于文言文和白话文的关系。因为它们也常被写作为(X)HTML。XHTML是HTML的“严谨版”。

1.1.2 DOCTYPE(文档类型)的含义与选择

   “DOCTYPE”(文档类型)的声明,是告诉浏览器,使用哪种规范来解释这个文档中的代码。  

  HTML 4.01和XHTML1.0分别对应于一种严格(Strict)类型和一种过渡(Transitional)类型。 过渡类型兼容以前版本定义的,而在新版本中已经废弃的标记和属性。

  严格类型则不兼容已经废弃的标记和属性。简易使用XHTML1.0 过渡类型,这样可以按照XHTML的标准书写符合Web标准的网页代码。

1.1.3 XHTML与HTML的重要区别

  在XHTML中标记名称必须小写;属性名称必须小写;标记必须严格嵌套;即使是空元素的标记也必须封闭;属性值必须用双引号括起来;属性值必须使用完整形式;应该区分“内容标记”和“结构标记”(例如<p>标记是内容标记,<table>标记是结构标记,不允许讲<table>标记置于<p>内部,可将<p>标记置于<td></td>之间。)

1.2 (X)HTML与CSS

  (X)HTML与CSS的关系就是“内容”与”形式“的关系,由(X)HTML确定网页内容,通过CSS决定页面的表现形式。

1.2.2 在HTML中引入CSS的方法

  在HTML中,引入CSS的方法 主要有:行内式、内嵌式、导入式、链接式4种。  

  1. 行内式:在标记的style属性中设定CSS样式,这种方式本质上没有体现出CSS的优势,因此不推荐使用。

  2. 嵌入式:对页面中的各种元素的设置集中在<head></head>之间。

  3. 导入式和链接式:目的都是将一个独立的CSS文件引入HTML文件中。链接式使用HTML的标记引入外部CSS文件,如

<link href="mystyle.css" rel="stylesheet" type="text/css" />.

    导入式需使用: <style type="text/css">  @import"mystyle.css";</style>

1.3 基本CSS选择器 selector

  标记选择器、类别选择器和ID选择器3种。

1.3.1 标记选择器

  选择器包含: 选择器本身、属性和值。

  如 h1{ color:red,font-size:12px;}.

1.3.2 类别选择器

  类别选择器的名称由用户自定义,属性和值跟标记选择器一样,也必须符合CSS规范。 如 .class{color:green;}

  最好通过标记选择器定义 标记的全局显示方案,再通过clss选择器突出标记进行单独设置。这样可提高代码的编写效率。

1.3.3 ID选择器

  ID选择器只能在HTML页面中使用一次,针对性更强。

1.4 复合选择器

  复合选择器是基本选择器通过不同的连接方式构成。

1.4.1 “交集”选择器

  由两个选择器直接连接构成。第一个必须是标记选择器,第二个必须是类别选择器或者ID选择器。不能有空格。 如 h3.class

1.4.2 "并集“选择器

  同时选中各个基本选择器选择的范围。

  *{ }  表示全局声明。

1.4.3 后代选择器

  通过嵌套方式对特殊位置的HTML标记进行声明。如  p span{}  <p><span></span></p>

  在构建HTML框架时,通常只给外层标记(父标记)定义class或id,内层标记能通过嵌套表示的则利用嵌套的方式。

1.5 CSS的继承特性

1.5.1 所有的CSS语句都是基于各个标记之间的继承关系的。在每一个分支中,称上层标记为其下层标记的”父“标记;下层标记称为上层标记的”子“标记。 

1.5.2 CSS继承的运用 

  CSS继承指的是子标记会继承父标记的所有样式风格,并可以在附表及样式风格的基础上再加以修改,产生新的样式,而子标记的样式风格完全不会影响父标记。

1.6 CSS的层叠特性

  优先级规则: 行内样式>ID样式>类别样式>标记样式。  越特殊的样式,优先级越高。

  两个类别样式优先级相同,以前者为准。 如 <div class="purple red"></div>,  以purple为准。