WEB标准中使用CSS的基础教程

css|web|web标准|基础教程

  CSS过去经常被用来定义字体的属性,而现在可以用它来控制整个文档的布局。然而,为了有效的用CSS来控制布局,需要做一些不同的处理,这种不同是跟用表格布局相对比的。

  为了CSS可以高效的控制布局,结构化、语义化的XHTML是必不可少的。

  浏览器的支持
  在过去几年,浏览器对CSS的支持程度已经改进了很多。不幸的是,浏览器的开发商好象对实施开放的标准并不感兴趣,所以不同浏览器对CSS的支持程度也大相径庭。就算是支持程度最好的浏览器,在软件中仍然有一些bug,使得浏览器以错误的方式运行。

  现在对CSS支持比较好的浏览器有Mozilla (还有以Gecko为内核的: Firefox, Camino, Netscape 6+), OperaSafari (还有以 WebCore为内核的: OmniWeb 4.5 and later)。 Internet Explorer 6/Win并没有如此好的CSS支持程度,但是它将让你为其做出大量的基础工作。Internet Explorer 5/Mac对CSS 1的支持很出色, 但是却不支持CSS 2。 IE 5.* for Windows的支持性也很好, 但是仍然有一些问题值得你去注意。早期版本的IE以及Netscape 6以前的版本就没有必要提及了。

  因为现在大多数人都使用IE/WIN,所以你将不得不让它成为特殊分子。这并不是说,你不能或者不应该使用有更好支持CSS能力的浏览器来提高他们的设计能力。

  现在在用的浏览器中,并不是所有的浏览器都有很好的CSS支持能力,使其能够具有解释用CSS布局的优秀图形化站点的能力。幸运的是,对于大多数网站,只有很小比例的访问者还在使用不能解释CSS的老浏览器。

  值得注意的是,这些人并不会被排斥在外的。在90年代,浏览器检验脚本是一个很流行的方法,它告诉那些使用“错误”浏览器的使用者一个新的网址,那个网址告诉他们去升级浏览器,好重新连接到那个网站。

  现在,你可以以一种更好的办法应付不被支持的浏览器。使用逻辑化、语义化的一个最大的好处就是它使文档在没有CSS时,仍然可以使用和访问。表现(就是文档看上去的样子)在一个支持性好的浏览器中也将呈现的不一样,但是它的内容将永远不变,大多数情况,对于访问网站的人来说,内容实际上比表现的方式更加重要。这就是为什么给那些支持性不好的浏览器发送一个没有样式的页面,要比把他们排斥在外要好的原因。

  有好几种方式去解决这个问题:一种最常见的方法是使用 @import来链接相应的的CSS文件。Netscape 4和老的浏览器不支持@import所以将不会导入CSS文件。还有许多方法来向浏览器隐藏CSS。大多数隐藏CSS的方法是利用了浏览器对CSS解释时的漏洞。这意味着总会存在浏览器通过升级弥补漏洞的危险。所以越少的依赖CSS hacks(CSS漏洞)越好。

  很明显的,你可以使用服务器端技术去做一个浏览器检测,然后针对不同的浏览器,发送不同的CSS文件。如果你这么做了,你必须要确保检测脚本是通用的,以避免因为浏览器的升级或者新的浏览器发布导致发送错误的CSS文件。

  用不同的方法应用CSS

  有以下几种方法使一个HTML文档中的元素应用CSS。

  外链式

  把所有的CSS规则都写在一个或几个单独的文件中,这种做法有许多优点。HTML文档会变得非常的小,CSS文件被存在浏览器的缓存中,仅仅需要下载一次即可,并且你只需要修改一个文件就可以改变整个网站的样式。一个外链式的CSS文件,见如下:

  h1 { font-weight:bold; }

  注意:在外链的CSS中没有<style>标签。

  你可以使用 <link>标签来把一个CSS链接到HTML文档中:

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

  或者在<style>中使用一个@import标签 :

  <style type="text/css"> @import url("styles.css"); </style>直接引用

  通过使用style属性,你可以直接的在HTML中应用CSS:

  <h1 style="font-weight:bold;">webjx.com</h1>

  这种情况,应尽量的避免,因为他把结构和表现混在一起了。

  内嵌式

  内嵌式CSS是写在<style>标签中,也是写在文档的<head>中:

  <style type="text/css"> h1 { font-weight:bold; } </style>

  这种情况也应该尽量避免,最好还是把HTML和CSS用单独的文件存放。

  CSS的语法

  一条CSS的规则是由一个选择器和一个或多个声明组成。选择器决定了CSS规则可作用于文档中的哪个或哪些元素。一个属性和一个值组成了一个声明,声明要用大括号({})括起来,并且每个声明要用分号(;)结束。

  一个简单的CSS规则如下:

  p { color:#0f0; font-weight:bold; }

  这个例子中, p就是选择器,表示这条规则将作用于文档中的所有被<p>包围的内容。这个规则中,有两条声明,它们共同作用,使 <p>中的内容所有字体为绿色并且加粗。

  想了解更详细的CSS规则,可以下载一个CSS使用手册

  多余的元素和类

  当我们刚开始学CSS时,很容犯一些错误:使用不必要的XHTML元素、多余的类和额外的 <div>。并不是说这些代码是不规范的,而是它与一些原则(如结构与表现相分离,使用简单的整洁的标记)相矛盾。

  下面是一个使用不必要XHTML元素的例子:

  <h3><em>Headline</em></h3>

  如果你想使标题行变成斜体,可以使用CSS来重新定义 <h3>元素:

  h3 { font-style:italic; }

  下面是一个使用多余的类的例子:

  <div id="main"> <div class="maincontent"> <p class="maincontenttext"> 网页教学网CSS技术 </p> </div> </div>

  下面这么写可能更好:

  <div id="main"> <div> <p> 网页教学网CSS技术 </p> </div> </div>

  为了控制div#main中的元素,你可以在CSS代码中使用相关的的选择器,例如:

  div#main p { /* rules */ }

  多数情况下,CSS允许你把想要的样式来定义XHTML,而不用增加额外的的标记。但是有的时候,增加一些额外的代码也是必要的。

  CSS小窍门

  很明显,一旦你去很认真的学习使用CSS,你一定会发现某些问题,这些问题可能是由误解造成的,可能是由对规则的不了解或者浏览器的漏洞造成的。CSS Crib Sheet就是一个好建议的荟萃,有Dave Shea整理,下面还将有一些重要的而且是Dave没有提及的小窍门。

  • 先校验:在调试的时候,先由校验开始吧,HTML和CSS都要进行校验。许多问题都是由不规范代码引起的。
  • 先在最先进的浏览器中调试,然后才轮到其他的浏览器: 如果你刚开始就用对CSS支持不好的浏览器调试,那么你所编的CSS将会逐渐适应这种错误的处理。当你继续在更先进的浏览器中测试,一些你所不希望的内容就会出现了。最好还是首先在一个有很好标准兼容性的浏览器中运行,然后再把代码拿到老一点的浏览器中去测试。
  • 理解CSS的盒模型:为了获得一个元素的实际的宽度和高度,你需要用paddingborder来增加它的 width或者height。在Internet Explorer 5.*/Win中, paddingborder是被包括在已知的widthheight

    假设你有如下的CSS代码:

    div.box { width:300px; padding:20px; border:10px solid; }
    所以这个div的总宽度是360px.

    10px + 20px + 300px + 20px + 10px = 360px
    在Internet Explorer 5.*/Win中,实际上总宽度为300px, 内容的宽度为240px.

    300px - 10px - 20px - 20px - 10px = 240px
    为了绕过这个问题, 你同样可以使用CSS hack来给不同的浏览器提供不同的值,或者你尽量避免在同一个元素中同时定义width padding或者widthborder

  • 为非零的数值加上单位:CSS要求一些属性值(如widthheightfont-size)必须要有单位。当属性值为0时是可以例外的。在那种情况下,没有单位也是必须的,因为0就是0,什么单位也都无所谓了。
  • 理解漂浮物:尽管漂浮物这个概念很难理解,但是它很重要,因为CSS中会频繁的使用它来布局。
  • “LoVe/HAte?” 按照如下顺序为链接定义伪类:Link, Visited, Hover, Active.
  • “TRouBLed?”当使用简写来定义marginpaddingborder时, 他们的顺序是从上开始的顺时针方向: 上、右、下、左。
  • 以其功能给CLASS和ID命名,而不是它的表现: 如果你有一个CLASS名为.smallblue, 过后你决定用它来定位文本,使其为大号、红色,那么CLASS的名字就会被弄混淆的。最好能用名字来描述功能和结构,如.copyright.im portant
  • CSS是个敏感的东西:当HTML属性中的 classid与CSS一起使用时,那可就要小心了。
  • 检查你的ID:文档中一个元素只能使用一个id,且id必须唯一,而class可以被多个元素所共享。
  • 使用合法的字符为classid命名: Classid的名字只能由数字、字母和连字符组成,数字和连字符是不可以开头的。
  • 正确的注释:CSS的注释是以/*开头,以*/结尾的:

    /* This is a comment */

  CSS布局

  有很多例子和阶梯教程指导您如何使用CSS布局。建议您从简单的例子开始,学习它的原理,然后再去学习复杂的布局。

时间: 2024-11-16 11:00:49

WEB标准中使用CSS的基础教程的相关文章

AS3.0中Tween类的基础 教程

AS3.0中Tween类的基础 教程 写个关于ActionScript3.0 中的Tween类的小教程吧,还是抛砖引玉,偷摸追赶一下潮流.(个人认为AS3.0是以后支持互动设计的主流技术) 说道Tween类,看字面的意思就是实现补间动画的.在Flash CS3中,Adobe已经为大家开发好了一套可以轻松实现运动效果的类.这套类包位于fl.transition.*中.其实,这些包 中的类效果的原理都是监听ENTER_FRAME事件的.在动画播放时,按帧频改变目标的属性,从而产生动画的效果. 负责动

web标准建站:CSS入门教程

css|web|web标准|教程|入门教程 原创教程,转载请注明出处:网页教学网 CSS是"Cascading Style Sheets"的简称,中文翻译为"串接样式表",也有人翻译 为"样式表".CSS用以作为网页的排版和风格设计,在web标准建站中,对CSS的熟悉和使用 是相当重要的一个内容.CSS的作用是弥补HTML的不足,让网页的设计更为灵活. 这个文章只是为您介绍CSS的基础应用,指引您的一个入门的基础教程,主要目的是为 推进web标准

CSS应用基础教程(1) 基本认识

css|基础教程 关 於 C S S 的 概 论 CSS是『Cascading Style Sheets』的简称,中文翻为「串接样式表」,也有人只翻为「样式表」.CSS用以作为网页的排版与风格设计,在所谓的「新式网页」里 ,CSS不容置疑是相当重要的一环.CSS是以既有的基础,用以弥补既存HTML 规格里的不足,也让网页的设计更为灵活. 这份教学文件就要来为您介绍CSS的应用罗!在这边并不介绍CSS的所有规格 ,仅就您在网页写作上较常用到,较可能用到的语法部份及应用的方法来为您作介绍.也 由於现

学习web标准:Web标准中的特殊字符

在最开始学习web标准的时候有这么一条: 把所有<和&特殊符号用编码表示 :任何小于号(<),不是标签的一部分,都必须被编码为& l t ; 任何大于号(>),不是标签的一部分,都必须被编码为& g t ;任何与号(&),不是实体的一部分的,都必须被编码为& a m p;注:以上字符之间无空格. 而在我们平时的工作中经常会遇到这种情况: 更多>> 国内的同行大多是写两个大于号>>或者干脆就写>>(更夸张的是有人为

解决web标准中IE无法设置滚动条颜色的问题

web|web标准|标准|解决|问题|滚动条 解决办法是将body换成html,您可以在下面的代码中把CSS样式中的body修改运行测试. 以下是HTML网页特效代码,点击运行按钮可查看效果: [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

CSS应用基础教程(2) 应用方式

css|基础教程 C S S 的 声 明 方 式 这章节将开始为您介绍CSS的应用.当然一开始要介绍的是如何去建立个样式表 (Style Sheets),包括了声明的方式和应用在网页上的方法,最後还会为您概述一下CSS的一些特性.概略来说,CSS的声明有三种方式: 一.基本声明:最典型的CSS声明方式. element {property: value} 用中文来表示的话,也就是元件(标签) {性质(属性)名称: 设定值}例如: H3 {COLOR: BLUE} 即为一组声明.二.集体声明:同时

CSS应用基础教程(4) 颜色背景

css|基础教程 本 章 C S S 的 主 要 作 用 在前面的章节介绍完了声明与应用的方法及 一些特性之後,从这章开始,便要正式进入CSS的指令介绍了!本章有两个介绍的主 题,第一个部份介绍的是颜色与背景性质的CSS,其主要的作用在于设定元素的前景 颜色.背景颜色与背景图形等样式设定的性质:而第二部份为您介绍的是用于控制摆放 元素位置的CSS的指令. 颜 色 背 景 的 C S S 指 令 color 设定前景颜色 支 持:IE3.IE4.NC4适 用:所有元素可能值: <color> 设

CSS应用基础教程(3) 应用补充

css|基础教程 挑 选 者 特 性 的 应 用 在讲挑选者的特性之前,要提一下的是CSS继承的特性.所谓的继承的特性是指被包在内部的标签将拥有外部标签的样式性质.继承的特性最典型的应用通常发挥在预设整份网页的样式,而要指定为其它样式的部份再依要设定在个别元素里即可.这项特性可以提供网页设计者更理想的发挥空间. 接下来就要讲挑选者特性的应用!其实这部份应该算是声明的一种方式,但是在您看过第二章的基本的声明与应用後,到这边再讲挑选者您会比较有概念点.在CSS应用或设计的时候,有几种依据元素的关系或

css滤镜基础教程_基础教程

CSS滤镜基础     随着网页设计技术的发展,人们已经不满足于原有的一些HTML标记,而是希望能够为页面添加一些多媒体属性,例如滤镜的和渐变的效果.CSS技术的飞快发展使这些需求成为了现实.从现在开始我要为大家介绍一个新的CSS扩展部分:CSS滤镜属性(Filter Properties).使用这种技术可以把可视化的滤镜和转换效果添加到一个标准的HTML元素上,例如图片.文本容器.以及其他一些对象.对于滤镜和渐变效果,前者是基础,因为后者就是滤镜效果的不断变化和演示更替.当滤镜和渐变效果结合到