CSS基础.docx

上传人:b****6 文档编号:6676272 上传时间:2023-01-08 格式:DOCX 页数:17 大小:243.36KB
下载 相关 举报
CSS基础.docx_第1页
第1页 / 共17页
CSS基础.docx_第2页
第2页 / 共17页
CSS基础.docx_第3页
第3页 / 共17页
CSS基础.docx_第4页
第4页 / 共17页
CSS基础.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

CSS基础.docx

《CSS基础.docx》由会员分享,可在线阅读,更多相关《CSS基础.docx(17页珍藏版)》请在冰豆网上搜索。

CSS基础.docx

CSS基础

实验四CSS基础

1实验目的

1)掌握CSS的基本语法规则;

2)掌握CSS的常用选择符;

3)掌握在网页上应用CSS的方法;

4)掌握使用Dreamweaver定义CSS的方法。

2实验内容

1)练习CSS的选择器、属性;

2)将实验三中完成的网站页面,采用CSS美化页面;

3)CSS定义符合W3C的标准要求。

3实验仪器、设备

1)PC机最低配置:

2GHz以上CPU;1G以上内存;1G自由硬盘空间;

2)InternetExplorer、Firefox、Chrome、Opera、Safari任意浏览器;

3)MacromediaDreamweaver8或MacromediaDreamweaverCS3。

4实验要求

1)掌握使用Dreamweaver进行CSS编辑的方法;

2)熟练掌握掌握CSS的基本语法规则;

3)掌握在网页上应用CSS的方法。

5实验步骤

5.1CSS基础知识

HTML标签原本被设计为用于定义文档内容。

通过使用

这样的标签,HTML的初衷是表达“这是标题”、“这是段落”、“这是表格”之类的信息。

同时文档布局由浏览器来完成,而不使用任何的格式化标签。

由于两种主要的浏览器(Netscape和InternetExplorer)不断地将新的HTML标签和属性(比如字体标签和颜色属性)添加到HTML规范中,创建文档内容清晰地独立于文档表现层的站点变得越来越困难。

为了解决这个问题,万维网联盟(W3C),这个非营利的标准化联盟,肩负起了HTML标准化的使命,并在HTML4.0之外创造出样式(Style)。

所有的主流浏览器均支持层叠样式表。

样式表定义如何显示HTML元素,就像HTML3.2的字体标签和颜色属性所起的作用那样。

样式通常保存在外部的.css文件中。

通过仅仅编辑一个简单的CSS文档,外部样式表使你有能力同时改变站点中所有页面的布局和外观。

由于允许同时控制多重页面的样式和布局,CSS可以称得上WEB设计领域的一个突破。

作为网站开发者,你能够为每个HTML元素定义样式,并将之应用于你希望的任意多的页面中。

如需进行全局的更新,只需简单地改变样式,然后网站中的所有元素均会自动地更新。

当同一个HTML元素被不止一个样式定义时,会使用哪个样式呢?

一般而言,所有的样式会根据下面的规则层叠于一个新的虚拟样式表中,其中4)拥有最高的优先权。

1)浏览器缺省设置

2)外部样式表

3)内部样式表(位于标签内部)

4)内联样式(在HTML元素内部)

因此,内联样式(在HTML元素内部)拥有最高的优先权,这意味着它将优先于以下的样式声明:

标签中的样式声明,外部样式表中的样式声明,或者浏览器中的样式声明(缺省值)。

5.2CCS基本语法

CSS规则由两个主要的部分构成:

选择器,以及一条或多条声明。

selector{declaration1;declaration2;...declarationN}

选择器通常是您需要改变样式的HTML元素,每条声明由一个属性和一个值组成。

属性(property)是您希望设置的样式属性(styleattribute),每个属性有一个值,属性和值被冒号分开。

selector{property:

value}

下面这行代码的作用是将h1元素内的文字颜色定义为红色,同时将字体大小设置为14像素。

在这个例子中,h1是选择器,color和font-size是属性,red和14px是值。

h1{color:

red;font-size:

14px;}

下面的示意图展示了上面这段代码的结构:

除了英文单词red,我们还可以使用十六进制的颜色值#ff0000:

p{color:

#ff0000;}

为了节约字节,我们可以使用CSS的缩写形式:

p{color:

#f00;}

我们还可以通过两种方法使用RGB值:

p{color:

rgb(255,0,0);}

p{color:

rgb(100%,0%,0%);}

请注意,当使用RGB百分比时,即使当值为0时也要写百分比符号。

但是在其他的情况下就不需要这么做了。

比如说,当尺寸为0像素时,0之后不需要使用px单位,因为0就是0,无论单位是什么。

记得写引号,如果值为若干单词,则要给值加引号:

p{font-family:

"sansserif";}

5.2.1多重声明

如果要定义不止一个声明,则需要用分号将每个声明分开。

下面的例子展示出如何定义一个红色文字的居中段落。

最后一条规则是不需要加分号的,因为分号在英语中是一个分隔符号,不是结束符号。

然而,大多数有经验的设计师会在每条声明的末尾都加上分号,这么的好处是,当你从现有的规则中增减声明时,会尽可能的减少出错的可能性。

就像这样:

p{text-align:

center;color:

red;}

你应该在每行只描述一个属性,这样可以增强样式定义的可读性,就像这样:

p{

text-align:

center;

color:

black;

font-family:

arial;

}

5.2.2空格和大小写

大多数样式表包含不止一条规则,而大多数规则包含不止一个声明。

多重声明和空格的使用使得样式表更容易被编辑:

body{

color:

#000;

background:

#fff;

margin:

0;

padding:

0;

font-family:

Georgia,Palatino,serif;

}

是否包含空格不会影响CSS在浏览器的工作效果,同样,与XHTML不同,CSS对大小写不敏感。

不过存在一个例外:

如果涉及到与HTML文档一起工作的话,class和id名称对大小写是敏感的。

5.2.3选择器的分组

你可以对选择器进行分组,这样,被分组的选择器就可以分享相同的声明。

用逗号将需要分组的选择器分开。

在下面的例子中,我们对所有的标题元素进行了分组。

所有的标题元素都是绿色的。

h1,h2,h3,h4,h5,h6{color:

green;}

5.2.4继承及其问题

根据CSS,子元素从父元素继承属性。

但是它并不总是按此方式工作。

看看下面这条规则:

body{font-family:

Verdana,sans-serif;}

根据上面这条规则,站点的body元素将使用Verdana字体(假如访问者的系统中存在该字体的话)。

通过CSS继承,子元素将继承最高级元素(在本例中是body)所拥有的属性(这些子元素诸如p,td,ul,ol,ul,li,dl,dt,和dd)。

不需要另外的规则,所有body的子元素都应该显示Verdana字体,子元素的子元素也一样。

并且在大部分的现代浏览器中,也确实是这样的。

如果你不希望"Verdana,sans-serif"字体被所有的子元素继承,又该怎么做呢?

比方说,你希望段落的字体是Times。

没问题。

创建一个针对p的特殊规则,这样它就会摆脱父元素的规则:

body{font-family:

Verdana,sans-serif;}

td,ul,ol,ul,li,dl,dt,dd{font-family:

Verdana,sans-serif;}

p{font-family:

Times,"TimesNewRoman",serif;}

5.2.5派生选择器

通过依据元素在其位置的上下文关系来定义样式,你可以使标记更加简洁。

在CSS1中,通过这种方式来应用规则的选择器被称为上下文选择器(contextualselectors),这是由于它们依赖于上下文关系来应用或者避免某项规则。

在CSS2中,它们称为派生选择器,但是无论你如何称呼它们,它们的作用都是相同的。

派生选择器允许你根据文档的上下文关系来确定某个标签的样式。

通过合理地使用派生选择器,我们可以使HTML代码变得更加整洁。

比方说,你希望列表中的strong元素变为斜体字,而不是通常的粗体字,可以这样定义一个派生选择器:

listrong{

font-style:

italic;

font-weight:

normal;

}

请注意标记为的蓝色代码的上下文关系:

我是粗体字,不是斜体字,因为我不在列表当中,所以这个规则对我不起作用

  1. 我是斜体字。

    这是因为strong元素位于li元素内。

  2. 我是正常的字体。

在上面的例子中,只有li元素中的strong元素的样式为斜体字,无需为strong元素定义特别的class或id,代码更加简洁。

再看看下面的CSS规则:

strong{color:

red;}

h2{color:

red;}

h2strong{color:

blue;}

下面是它施加影响的HTML:

Thestronglyemphasizedwordinthisparagraphisred.

Thissubheadisalsored.

Thestronglyemphasizedwordinthissubheadisblue.

5.2.6id选择器

id选择器可以为标有特定id的HTML元素指定特定的样式。

id选择器以"#"来定义。

下面的两个id选择器,第一个可以定义元素的颜色为红色,第二个定义元素的颜色为绿色:

#red{color:

red;}

#green{color:

green;}

下面的HTML代码中,id属性为red的p元素显示为红色,而id属性为green的p元素显示为绿色。

这个段落是红色。

这个段落是绿色。

注意:

id属性只能在每个HTML文档中出现一次。

5.2.7id选择器和派生选择器

在现代布局中,id选择器常常用于建立派生选择器。

#sidebarp{

font-style:

italic;

text-align:

right;

margin-top:

0.5em;

}

上面的样式只会应用于出现在id是sidebar的元素内的段落。

这个元素很可能是div或者是表格单元,尽管它也可能是一个表格或者其他块级元素。

它甚至可以是一个内联元素,比如

5.2.8CSS类选择器

在CSS中,类选择器以一个点号显示:

.center{text-align:

center}

在上面的例子中,所有拥有center类的HTML元素均为居中。

在下面的HTML代码中,h1和p元素都有center类。

这意味着两者都将遵守".center"选择器中的规则。

Thisheadingwillbecenter-aligned

Thisparagraphwillalsobecenter-aligned.

注意:

类名的第一个字符不能使用数字!

它无法在Mozilla或Firefox中起作用。

和id一样,class也可被用作派生选择器:

.fancytd{color:

#f60;background:

#666;}

在上面这个例子中,类名为fancy的更大的元素内部的表格单元都会以灰色背景显示橙色文字。

(名为fancy的更大的元素可能是一个表格或者一个div)

元素也可以基于它们的类而被选择:

td.fancy{color:

#f60;background:

#666;}

在上面的例子中,类名为fancy的表格单元将是带有灰色背景的橙色。

你可以将类fancy分配给任何一个表格元素任意多的次数。

那些以fancy标注的单元格都会是带有灰色背景的橙色。

那些没有被分配名为fancy的类的单元格不会受这条规则的影响。

还有一点值得注意,class为fancy的段落也不会是带有灰色背景的橙色,当然,任何其他被标注为fancy的元素也不会受这条规则的影响。

这都是由于我们书写这条规则的方式,这个效果被限制于被标注为fancy的表格单元(即使用td元素来选择fancy类)。

5.2.9如何插入样式表

当读到一个样式表时,浏览器会根据它来格式化HTML文档。

插入样式表的方法有三种:

1)外部样式表

当样式需要应用于很多页面时,外部样式表将是理想的选择。

在使用外部样式表的情况下,你可以通过改变一个文件来改变整个站点的外观。

每个页面使用标签链接到样式表。

标签在(文档的)头部:

浏览器会从文件mystyle.css中读到样式声明,并根据它来格式文档。

外部样式表可以在任何文本编辑器中进行编辑。

文件不能包含任何的html标签。

样式表应该以.css扩展名进行保存。

下面是一个样式表文件的例子:

hr{color:

sienna;}

p{margin-left:

20px;}

body{background-image:

url("images/back40.gif");}

不要在属性值与单位之间留有空格。

假如你使用“margin-left:

20px”而不是“margin-left:

20px”,它仅在IE6中有效,但是在Mozilla/Firefox或Netscape中却无法正常工作。

2)内部样式表

当单个文档需要特殊的样式时,就应该使用内部样式表。

你可以使用

3)内联样式

由于要将表现和内容混杂在一起,内联样式会损失掉样式表的许多优势。

请慎用这种方法,例如当样式仅需要在一个元素上应用一次时。

要使用内联样式,你需要在相关的标签内使用样式(style)属性。

Style属性可以包含任何CSS属性。

本例展示如何改变段落的颜色和左外边距:

sienna;margin-left:

20px">

Thisisaparagraph

4)多重样式

如果某些属性在不同的样式表中被同样的选择器定义,那么属性值将从更具体的样式表中被继承过来。

例如,外部样式表拥有针对h3选择器的三个属性:

h3{color:

red;text-align:

left;font-size:

8pt;}

而内部样式表拥有针对h3选择器的两个属性:

h3{text-align:

right;font-size:

20pt;}

假如拥有内部样式表的这个页面同时与外部样式表链接,那么h3得到的样式是:

color:

red;text-align:

right;font-size:

20pt;

即颜色属性将被继承于外部样式表,而文字排列(text-alignment)和字体尺寸(font-size)会被内部样式表中的规则取代。

5.3使用Dreamweaver定义CSS

1)打开实验三中的首页index.html;

2)在“CSS样式”面板上,单击

按钮,新建CSS样式;

3)在规则定义中对话框中编辑类的属性;

4)也可以在Dreamweaver中直接编辑CSS文件,支持代码辅助编辑,有利于快速学习CSS;

5.4使用CSS修改“神秘花园”网站示例

1)打开“神秘花园”网站的index.html,使用

标记定义网页的逻辑结构;

SecretGarden

/*header结束*/

  • 首页
  • 作品列表
  • 十年精选
  • 神秘园乐队(SecretGarden)成立于1994年,……

    ……

    就让我们从音响论坛/CDHI总编刘汉盛先生的文字中来领略一下神秘园的意境吧……

    每个人的心中都有一座神秘花园,花园里有花有树有草,

    有春有夏有秋有冬;也免不了有喜有悲。


    ……

    有中国的秘密、爱尔兰的童话、居尔特的风情、

    挪威的峡湾回声以及面对新世纪的晨曦。

    /*prose结束*/

    /*content结束*/

    copyright©神秘园音乐2007

    /*footerer结束*/

    /*containerer结束*/

    2)创建CSS.css文件,并在index.html用引用该CSS文件

    3)在CSS.css中添加样式:

    /*定义“body”的样式*/

    body{

    font:

    small"宋体";

    text-align:

    center;

    padding-top:

    20px;

    padding-bottom:

    20px;

    }

    /*定义“#container”的样式*/

    #container{

    text-align:

    left;

    margin:

    auto;

    width:

    722px;

    border:

    1pxsolid#666666;

    }

    /*定义“#header”的样式*/

    #header{

    background:

    url(../images/bg_header.jpg);

    height:

    200px;

    margin:

    1px;

    text-indent:

    -9999px;

    }

    /*定义“#nav”样式*/

    #nav{

    width:

    722px;

    float:

    left;

    border-top:

    1pxsolid#666666;

    border-bottom:

    1pxsolid#666666;

    }

    /*定义“#navli”样式*/

    #navli{

    float:

    left;

    list-style:

    none;

    }

    /*定义“#nava”样式*/

    #nava{

    color:

    #000000;

    text-decoration:

    none;

    padding:

    5px8px;

    display:

    block;

    }

    /*定义“#nava:

    hover”样式*/

    #nava:

    hover{

    color:

    #FF0000;

    }

    /*定义“#content”的样式*/

    #content{

    clear:

    both;

    padding:

    15px;

    line-height:

    1.5em;

    text-indent:

    2em;

    }

    /*定义“#contentimg”的样式*/

    #contentimg{

    float:

    right;

    margin-left:

    15px;

    }

    /*定义“#prose”的样式*/

    #prose{

    color:

    #3587B9;

    padding-left:

    80px;

    padding-top:

    10px;

    text-indent:

    0em;

    }

    /*定义“#footer”的样式*/

    #footer{

    height:

    40px;

    border-top:

    1pxsolid#666666;

    line-height:

    40px;

    text-align:

    center;

    }

    5.5动手试一试

    请根据5.1到5.3的内容,在html页面中进行练习,并记录中间过程并截图。

    同时利用CSS定义实验三中实现的网站。

    小窍门:

    可以利用Dreamweaver提供的一些模板来学习CSS。

    6实验报告要求

    1)详细写出需要自己动手练习实验内容的步骤;

    2)给出CSS练习过程中各个页面的截屏;

    3)填写实验报告,与ex4文件夹下全部htm文件、图片打包提交;

    4)提交文件名格式:

    班级号-学号-姓名-实验四.rar;

    7实验注意事项

    1)看清实验指导书后再动手;

    2)按实验指导书动手做实验的过程中要勤于思考;

    3)实验中充分利用搜索引擎学习相关知识和解决问题,同时要掌握如何利用高级搜索功能快速找到相关网页。

    8思考题

    CSS继承情况中,如果重复设置了属性,谁会被采用呢?

    9扩展阅读

    我们努力学习使用XHTML+CSS来重新设计我们的网站。

    那么我们如何知道自己制作的页面真的符合web标准?

    W3C和一些志愿者网站提供了在线校验程序,来帮助我们检查页面是否符合标准,并提供了修正错误的帮助信息。

    这些校验非常有用,是我们调试页面第一步要做的事情。

    9.1XHTML校验

    校验网址:

    http:

    //validator.w3.org/,校验方式:

    网址校验、文件上传校验。

    校验成功,会显示"ThisPageIsValidXHTML1.0Transitional!

    ",如图:

    校验失败,会显示更多校验选项和错误信息,如图:

    一般选择"ShowSource"和"VerboseOutput"可以帮助你找到错误代码所在行和错误原因。

    9.2XHTML校验常见错误原因对照表

    1)·NoDOCTYPEFound!

    FallingBacktoHTML4.01Transitional--未定义DOCTYPE。

    2)·NoC

    展开阅读全文
    相关搜索

    当前位置:首页 > 解决方案 > 学习计划

    copyright@ 2008-2022 冰豆网网站版权所有

    经营许可证编号:鄂ICP备2022015515号-1