[程序设计]css终极手册

教育 网编 2023-03-11 16:06 202 0

您可以利用下列 3 种方式,将 CSS 指定的格调加诸于网页上:

  1. 在 HTML 档案里加一个超连结,连到外在的 CSS 档

  这个方法最方便管理整个网站的网页风貌。它让网页的文字内容与版面设计分开。您只要在一个 CSS 档内(副档名为 .CSS)定义好网页的外观风格,所有参考连结到此 CSS 档的网页,便会依照指示,反应出定义好的风格。

  它的写法是: <HTML>

  <HEAD>

  <TITLE>

  本页标题

  </TITLE>

  <LINK REL="stylesheet"

  HREF=""

  TYPE="text/css">

  </HEAD>

  此种方法 Navigator4 支援得仍十分 Buggy,请小心使用。

  2. 在 HTML 档案的 <HEAD>.......</HEAD> 标签间,加一段 CSS 的叙述文

  这个方法适用于指定某个网页,除了展现外在的 CSS 档定义好的网页风格外,同时还要展现本身 HTML 档内加注的 CSS 。

  如果内在加注的 CSS 叙述与外在连结的 CSS 叙述相冲突的话,网页的展现将以内在加注的 CSS 叙述为主。

  它的写法是: <HTML>

  <HEAD>

  <TITLE>

  本页标题

  </TITLE>

  <STYLE TYPE="text/css">

  <!--

  BODY {font: 12pt}

  H1 {font: 16pt}

  P {font-weight: bold;

  color: green}

  -->

  </STYLE>

  </HEAD>

  <BODY>

  开始本页内容…

  </BODY>

  </HTML>

  特别值得注意的是,为了防止不支援 CSS 的浏览器误将 <STYLE> … </STYLE> 标签间的 CSS 风格叙述当成普通字串,而展现于网页上,您最好将 CSS 的叙述文字插入 <!-- --> 标签之间。

  3. 在 HTML 档的字里行间中,随时有需要,随时加一小段 CSS 的叙述指定

  这个方法适用于指定网页内的某一小段文字的呈现风格。

  导览器除了会展现出外在的 CSS 档与此 HTML 档 <HEAD> 内定义的 CSS 风格(如果有的话),同时还会展现字里行间的 CSS 风格。

  如果字里行间的 CSS 叙述与<HEAD> 内在定义的 CSS 或外在连结的 CSS 叙述相冲突的话,导览器的展现将以字里行间的 CSS 叙述为主。

  它的写法是: <HTML>

  <HEAD>

  <TITLE>

  本页标题

  </TITLE>

  </HEAD>

  <BODY>

  <P STYLE="color: red">

  开始本页内容…

  </P>

  </BODY>

  </HTML>

  上述的 3 种 CSS,可以同时并用,也可以择您所好,单一或成双地使用。如果各 CSS 间的叙述相冲突,则内在定义的 CSS 会盖过外在连结的 CSS ,字里行间的 CSS 会盖过<HEAD> 内在定义的 CSS 。

  这样一层一层地推展、补充下来,使得「阶层性格调控制」清楚又有效率地帮助网页设计者,一方面中央统筹整个网站的网页风貌,另一方面又可以随著各个网页、各个文字段落的特别需要,而分别调配不同的格调。十分有条不紊,十分方便管理,所以称之为「阶层性」的格调控制。

  CSS 语言的基本语法

  CSS 的语言与网页排版语言 HTML,在内容上有一点点类似重覆,但是语法却大不相同。它的基本语法是: H1 {font-size: 16pt;

  font-weight: bolder;

  color: red}

  上例中,H1表示您想要界定的标签元件为 H1,font-size、font-weight、color 这些扩充属性则表示您想指定 H1 应该长成什么模样。在上例中,我界定我的 H1 应该展现出字体大小 16 点,特粗黑体,红色的模样。

  简化之

  因此,顺著这个基本写法,我们可以继续定义其他的标签元件: H1 {font-size: 16pt;

  font-weight: bolder;

  color: red}

  H2 {font-size: 16pt;

  font-weight: bolder;

  color: red}

  H3 {font-size: 16pt;

  font-weight: bolder;

  color: red}

  上例中,H1、H2、H3 界定的标签元件均长得一模一样,因此我们可以将它们简化写成: H1, H2, H3 {font-size: 16pt;

  font-weight: bolder;

  color: red}

  而如果您想要让您的 H1, H2, H3 各自拥有各自不同的风格,那么您必须一笔一笔地条列说明清楚: H1 {font-size: 16pt;

  font-weight: bolder;

  font-family: Times, serif;

  color: red}

  H2 {font-size: 14pt;

  font-weight: bold;

  font-family: Georgia, serif;

  color: green}

  H3 {font-size: 12pt;

  font-weight: bold;

  font-family: "New York", serif;

  color: gray}

  另一种简化方法

  虽然在上例中, H1, H2, H3 各自拥有各自不同的风格,使得您必须一笔一笔说明清楚。但是您会注意到,我们在指定 H1, H2, H3 各自不同的风格时,其实大都是在指定 H1, H2, H3 的字体表现(字体大小、字体粗细、字体的形体)。因此,我们可以将所有以 font字眼开始的叙述,整合在一个 font 大项里: H1 {font: 16pt bolder Times, serif;

  color: red}

  H2 {font: 14pt bold Georgia, serif;

  color: green}

  H3 {font: 12pt bold "New York", serif;

  color: gray}

  特别值得注意的是,在上例中,H3 的字体使用 "New York" 字体, "New York" 是两个字,所以必须将它 "括号" 起来。而 H1, H2, H3 的颜色规定,并不能一道并入 font 大项中,而必须另外标清楚。

  顺便一提的是,CSS 与 HTML 一样,都有「注解」的符号。HTML 使用 <!-- -->做「注解」;而 CSS 使用 /* 这里是注解 */。

  CSS 中 Font 的扩充属性

  前言:

  1. CSS-Cascading Style Sheet 只能展现于有支援 Style Sheet 的浏览器内,例如:网景的 Navigator4 与微软的 IE3, IE4。版本不够新的浏览器显现不出 Style sheet 规定的风格。

  2. 本系列文章只说明介绍 Navigator4 与 IE3、IE4 浏览器 共同支援的 CSS1 扩充属性。至于 W3C 详细规定的完整 CSS1 文件,或者 网景 、 微软各自支援的 CSS 扩充属性,请到其网站的 Style Sheet 部门观看。

  3. CSS 的写法使用大写或小写均可。

  {font-family: Times}

  此属性用来指定字体的形体。画底线的部分可以用各式各样的字体来替换之。您可以同时指定好多种字体,以防 user 端没有第一种字体时,可以继续依照您的指示,选用第二、第三种字体。

  参考范例:

  P {font-family: Times,"New York"}

  LI {font-family: "中黑体"}

  BLOCKQUOTE {font-family: monospace}

  特别值得注意的是,在上例中,字体 "New York" 、 "中黑体" 因为是两个字(以上),所以必须将它们 "括号" 起来。此外,第三例中的 monospace 是用来指定写程序码时使用的等距字体。

  {font-weight: bold}

  此属性用来指定字体的粗细。画底线的部分可以使用下列 2 组表示法来替换之:

  * normal, bold, bolder, lighter

  * 100, 200, 300..........900

  此属性的内定值为 normal。

  参考范例:

  H1 {font-weight: bolder}

  BLOCKQUOTE {font-weight: 200}

  {font-size: medium}

  此属性用来指定字体的大小。画底线的部分可以使用下列 4 组表示法来替换之:

  * 绝对 size: xx-small, x-small, small,medium, large, x-large, xx-large

  * 相对 size: larger, smaller(与母标签相对比)

  * 字体的点数 (point): 12pt,16pt, 20pt....

  * 百分比: 80%, 120% .... (与母标签相对比)

  此属性的内定值为 medium。

  参考范例:

  BODY {font-size: medium}

  H1 {font-size: 18pt}

  H2 {font-size: 90%}

  {font-style: normal}

  此属性用来指定字体的正体或斜体。画底线的部分可以使用 normal, italic, oblique (仅 IE4 支援 oblique) 来替换之。

  此属性的内定值为 normal。

  参考范例:

  H4 {font-style: italic}

  P {font-style: oblique}

  {font: 12pt/14pt}

  此属性用来指定字体的大小与每行行距的高度。上例中,12pt 指的是字体的大小,14pt 指的是行距的高度。

  事实上,{font: … } 可以集结所有跟 font 有关的扩充属性在此标签内,所以您除了在 {font: … } 内指定字体大小与行距高度外,还可以在此标签内加入所有上述介绍过的属性。

  参考范例:

  P {font: italic bold 12pt/14pt}

  STRONG {font: 14pt/18pt bolder italic Times, serif}

  CSS 中 Color 的扩充属性

  {color: red}

  此属性用来指定字体的颜色。画底线的部分可以用各式各样的颜色来替换之。您可以使用16 进位颜色码表示(如:#00ff77)或利用浏览器既定的英文单字表示颜色(如:gray, blue..... 详细请见: Table 的扩充属性 )。

  如果您指定的颜色如同 #00ff77 一般,是两位数字、两位数字重覆组成的话 (00, ff,77 而非 03, 8f,7e ) ,您可以直接使用 #0f7简化表示之。

  参考范例:

  BLOCKQUOTE {color: navy}

  LI {color: #eedd44}

  LI {color: #ed4}

  P {color: #007f3a}

  {background-color: red}

  此属性用来指定整个网页的背景颜色,或某一段落,某一区块的背景颜色。画底线的部分可以用各式各样的颜色来替换之。您可以使用16 进位颜色码表示(如:#00ff77)或利用浏览器既定的英文单字表示颜色(如:gray, blue..... 详细请见: Table 的扩充属性 )。

  如果您指定的颜色如同 #00ff77 一般,是两位数字、两位数字重覆组成的话 (00, ff,77 而非 03, 8f,7e ) ,您可以直接使用 #0f7简化表示之。

  参考范例:

  BODY {background-color: #ed4}

  BLOCKQUOTE {background-color: navy}

  H2 {background-color: #007f3a}

  {background-image: url (/images/xyz.gif)}

  此属性用来指定网页或某一区块的背景图案。画底线的部分可以使用图档的绝对位置或相对位置来表示之。

  使用此标签时,最好同时也指定一个类似的颜色做背景颜色。

  参考范例:

  BODY {

  background-image: url (/images/2T_logo.gif);

  background-color: #ededff

  LI {

  background-image: url ();

  background-color: #cef

  {background: (…)}

  此标签可以集结所有跟 background 有关的扩充属性在此一标签内,所以您可以将所有上述介绍过的 background 属性一起加进来。

  参考范例:

  BODY {background: white url (/images/2T_logo.gif) repeat-y}

  LI {background: #cc88ff url (}

  CSS 中 Text 的扩充属性

  {text-decoration: none}

  此属性用来指定文字是否画有底线或被线条杠掉(如:被线条杠掉此例)。画底线的部分可以用 none, underline, line-through 来替换之。

  此属性的内定值为 none。

  参考范例:

  P {

  color: navy;

  text-decoration: none

  A:link, A:visited, A:active {

  text-decoration: underline

  {text-align: left}

  此属性用来指定文字是向左、向中、或向右对齐。画底线的部分可以用 left, right, center, justify 来替换之。

  参考范例:

  P {text-align: left}

  H1 {text-align: center}

  {text-indent: 2cm}

  此属性用来指定文字向右凹进去多少公分、厘米、英寸、点数(point)、图素(pixel)、或多少 % 。测量单位可以用 cm, mm, in, pt, px, %来表示之。 % 是以母标签来相对比。

  参考范例:

  P {text-indent: 3cm}

  LI {text-indent: 60px}

  BLOCKQUOTE {text-indent: 20%}

  {line-height: 14pt}

  此属性用来指定每行行距的高度。line-height 常与字体大小 font-size 一起并用,写成 12pt/14pt (12pt 指的是字体的大小,14pt 指的是行距的高度)。line-height也可以用 % 表示之。 % 是以母标签来相对比。

  参考范例:

  BODY {

  font-size: 12pt;

  line-height:14pt

  H1 {

  font-size: 150%;

  line-height: 200%

  H4 {font: 16pt/20pt bold italic}

  CSS 中 Margin, Padding 的扩充属性

  {margin: 3cm}

  此属性用来指定网页的上下左右边缘,各需留白多少公分、厘米、英寸、点数(point)、图素(pixel)、或多少 % 。测量单位可以用 cm, mm, in, pt, px, %来表示之。 % 是以母标签来相对比。

  margin 可以用 margin-top, margin-bottom, margin-left, margin-right来替换之。

  此属性的内定值为 0。

  参考范例:

  BODY {

  margin-top: 44px;

  margin-bottom: 2cm;

  margin-left: 66px;

  margin-right: 1.5in

  P {margin: 15pt}

  {padding: 14px}

  此属性用来指定各段落或各区块间,上下左右边缘各需留白多少公分、厘米、英寸、点数(point)、图素(pixel)、或多少 % 。测量单位可以用 cm, mm, in, pt, px, %来表示之。 % 是以母标签来相对比。

  padding 可以用 padding-top, padding-bottom, padding-left, padding-right来替换之。

  此属性的内定值为 0。IE3 不支援所有与 padding 相关的标签。

评论区