账号通
    

账号  

密码  

5803

查看

26

回复
主题:WEB设计、DIV+CSS入门 (更新) [收藏主题] 转到:  
lxykx 当前离线

325

主题

0

广播

0

粉丝
添加关注
级别:三年级

用户积分:4196 分
登录次数:536 次
注册时间:2006/9/25
最后登录:2012/10/31
lxykx 发表于:2007/2/9 12:17:00   | 只看该作者 查看该作者主题 11楼 

十.控制列表的样式

列表是HTML里一种很有用的显示方式,可以把相关的并列内容整齐地垂直排列,使网页显得整洁专业,并让浏览者有一目了然的感觉。

列表是HTML里一种很有用的显示方式,可以把相关的并列内容整齐地垂直排列,使网页显得整洁专业,并让浏览者有一目了然的感觉。

列表是HTML里一种很有用的显示方式,可以把相关的并列内容整齐地垂直排列,使网页显得整洁专业,并让浏览者有一目了然的感觉。

列表是HTML里一种很有用的显示方式,可以把相关的并列内容整齐地垂直排列,使网页显得整洁专业,并让浏览者有一目了然的感觉。

样式表为列表增加了一些功能,控制列表的样式包括列表样式、图形符号、列表位置三个部分。

1.列表符号

列表符号是指显示于每一个列表项目前的符号标识。

基本格式如下:

list-style-type:参数

参数取值范围:

·disc:圆形

·circle:空心圆

·square:方块

·decimal:十进制数字

·lower-roman:小写罗马数字

·upper-roman:大写罗马数字

·lower-alpha:小写希腊字母

·upper-alpha:大写希腊字母

·none:无符号显示

参数中的disc是默认选项。

2.图形符号

图形符号指原来列表的项目符号将可以使用图形来代替。

基本格式如下:

list-style-image:URL

URL是用来代替项目符号的图形文件的地址,可以使用相对地址或绝对地址。

3.列表位置

列表位置描述列表在何处显示。

基本格式如下:

list-style-position:参数

参数取值范围:

·inside:在BOX模型内部显示

·outside:在BOX模型外部显示

这里又出现了一个新的概念:BOX模型。BOX是指一种容器,包含了应用样式规则的对象,具体介绍将在后文中给出。

十一.控制用户界面的样式

在网页上,鼠标平时呈箭头形,指向链接时成为手形,等待网页下载时成为沙漏形……这似乎是约定俗成的。虽然这样的设计能使我们知道浏览器现在的状态或是可以做什么,但这些好像还不能完全地满足我们的需要。就拿链接来说,可以是指向一个帮助文件,也可以是向前进一页或是向后退一页,针对如此多的功能光靠千篇一律的手形鼠标是不能说明问题的。值得庆幸的是,CSS提供了多达13种的鼠标形状,供我们选择。

基本格式如下:

cursor:鼠标形状参数

CSS鼠标形状参数表:

CSS代码

鼠标形状

style="cursor:hand"

手形

style="cursor:crosshair"

十字形

style="cursor:text"

文本形

style="cursor:wait"

沙漏形

style="cursor:move"

十字箭头形

style="cursor:help"

问号形

style="cursor:e-resize"

右箭头形

style="cursor:n-resize"

上箭头形

style="cursor:nw-resize"

左上箭头形

style="cursor:w-resize"

左箭头形

style="cursor:s-resize"

下箭头形

style="cursor:se-resize"

右下箭头形

style="cursor:sw-resize"

左下箭头形

 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
lxykx 当前离线

325

主题

0

广播

0

粉丝
添加关注
级别:三年级

用户积分:4196 分
登录次数:536 次
注册时间:2006/9/25
最后登录:2012/10/31
lxykx 发表于:2007/2/9 12:16:00   | 只看该作者 查看该作者主题 12楼 
科汛在线商城系统(NET)

九.控制颜色和背景的样式

控制颜色和背景的样式包括颜色属性、背景颜色、背景图片、背景图片重复、背景图片固定、背景定位六个部分。

控制颜色和背景的样式包括颜色属性、背景颜色、背景图片、背景图片重复、背景图片固定、背景定位六个部分。

控制颜色和背景的样式包括颜色属性、背景颜色、背景图片、背景图片重复、背景图片固定、背景定位六个部分。

控制颜色和背景的样式包括颜色属性、背景颜色、背景图片、背景图片重复、背景图片固定、背景定位六个部分。

1.颜色属性

基本格式如下:

color: 参数

颜色参数取值范围:

·以RGB值表示

·以16进制(hex)的色彩值表示

·以默认颜色的英文名称表示

以默认颜色的英文名称表示无疑是最为方便的,但由于预定义的颜色种类太少,所以更多的网页设计者喜欢用RGB的方式。RGB方式的好处很多,不但可以用数字的形式精确地表示颜色,而且也是很多图像制作软件(如Photoshop)里默认使用的规范,这样一来就为图片和网页更好地结合打下了坚实的基础。

2.背景颜色

在HTML当中,要为某个对象加上背景色只有一种办法,那就是先做一个表格,在表格中设置完背景色,再把对象放进单元格。这样做比较麻烦,不但代码较多,还要为表格的大小和定位伤些脑筋。现在用CSS就可以轻松地直接搞定了,而且对象的范围很广,可以是一段文字,也可以只是一个单词或一个字母。

基本格式如下:

background-color: 参数

参数取值和颜色属性一样。

3.背景图片

基本格式如下:

background-image: url(URL)

URL就是背景图片的存放路径。如果用“none”来代替背景图片的存放路径,将什么也不显示。

4.背景图片重复

背景图片重复控制的是背景图片平铺与否,也就是说,结合背景定位的控制可以在网页上的某处单独显示一幅背景图片。

基本格式如下:

background-repeat: 参数

参数取值范围:

·no-repeat:不重复平铺背景图片

·repeat-x:使图片只在水平方向上平铺

·repeat-y:使图片只在垂直方向上平铺

如果不指定背景图片重复属性,浏览器默认的是背景图片向水平、垂直两个方向上平铺。

5.背景图片固定

背景图片固定控制背景图片是否随网页的滚动而滚动。如果不设置背景图片固定属性,浏览器默认背景图片随网页的滚动而滚动。为了避免过于花哨的背景图片在滚动时伤害浏览者的视力,所以可以解除背景图片和文字内容的捆绑,该为和浏览器窗口捆绑。

基本格式如下:

background-attachment: 参数

参数取值范围:

·fixed:网页滚动时,背景图片相对于浏览器的窗口而言,固定不动

·scroll:网页滚动时,背景图片相对于浏览器的窗口而言,一起滚动

6.背景定位

背景定位用于控制背景图片在网页中显示的位置。

基本格式如下:

background-position: 参数表

参数取值范围:

·带长度单位的数字参数

·top:相对前景对象顶对齐

·bottom:相对前景对象底对齐

·left:相对前景对象左对齐

·right:相对前景对象右对齐

·center:相对前景对象中心对齐

·比例关系

参数中的center如果用于另外一个参数的前面,表示水平居中;如果用于另外一个参数的后面,表示垂直居中。

 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
lxykx 当前离线

325

主题

0

广播

0

粉丝
添加关注
级别:三年级

用户积分:4196 分
登录次数:536 次
注册时间:2006/9/25
最后登录:2012/10/31
lxykx 发表于:2007/2/9 12:15:00   | 只看该作者 查看该作者主题 13楼 
科汛在线商城系统(NET)
从基础开始:CSS实用教程(二)

七.控制文字的样式

控制文字的样式包括文字大小写、文字修饰两个部分。

控制文字的样式包括文字大小写、文字修饰两个部分。

1.文字大小写

文字大小写使网页的设计者不用在输入文字时就完成文字的大小写,而可以在输入完毕后,再根据需要对局部的文字设置大小写。

基本格式如下:

text-transform: 参数

参数取值范围:

·uppercase:所有文字大写显示

·lowercase:所有文字小写显示

·capitalize:每个单词的头字母大写显示

·none:不继承母体的文字变形参数

注意:继承是指HTML的标识符对于包含自己的标识符的参数会继承下来。

2.文字修饰

文字修饰的主要用途是改变浏览器显示文字链接时的下划线。

基本格式如下:

text-decoration: 参数

参数取值范围:

·underline:为文字加下划线

·overline:为文字加上划线

·line-through:为文字加删除线

·blink:使文字闪烁

·none:不显示上述任何效果

八.控制文本的样式

控制文本的样式包括单词距离、字母距离、文本行距、文本水平对齐、文本垂直对齐文本缩进六个部分。

1.单词间距

单词间距指的是英文每个单词之间的距离,不包括中文文字。

基本格式如下:

word-spacing: 间隔距离

间隔距离的取值:points、em、pixes、in、cm、mm、pc、ex、normal等。

2.字母间距

字母间距是指英文字母之间的距离,功能、用法,以及参数的设置和单词间距很相似。

基本格式如下:

letter-spacing: 字母间距

3.行距

行距是指上下两行基准线之间的垂直距离。一般地说,英文五线格练习本,从上往下数的第三条横线就是计算机所认为的该行的基准线。

基本格式如下:

line-height: 行间距离

行间距离取值:

·不带单位的数字:以1为基数,相当于比例关系的100%

·带长度单位的数字:以具体的单位为准

·比例关系

注意:如果文字字体很大,而行距相对较小的话,可能会发生上下两行文字互相重叠的现象。

4.文本水平对齐

文本水平对齐可以控制文本的水平对齐,而且并不仅仅指文字内容,也包括设置图片、影像资料的对齐方式。

基本格式如下:

text-align: 参数

参数的取值:

·left:左对齐

·right:右对齐

·center:居中对齐

·justify:相对左右对齐

但需要注意的是,text-alight是块级属性,只能用于< p>、< blockquqte>、< ul>、< h1>~< h6>等标识符里。

5.文本垂直对齐

文本的垂直对齐应当是相对于文本母体的位置而言的,不是指文本在网页里垂直对齐。比如说,表格的单元格里有一段文本,那么对这段文本设置垂直居中就是针对单元格来衡量的,也就是说,文本将在单元格的正中显示,而不是整个网页的正中。

基本格式如下:

vertical-align: 参数

参数取值:

·top:顶对齐

·bottom:底对齐

·text-top:相对文本顶对齐

·text-bottom:相对文本底对齐

·baseline:基准线对齐

·middle:中心对齐

·sub:以下标的形式显示

·super:以上标的形式显示

6.文本缩进

文本缩进可以使文本在相对默认值较窄的区域里显示,主要用于中文板式的首行缩进,或是为大段的引用文本和备注做成缩进的格式。

基本格式如下:

text-indent: 缩进距离

缩进距离取值:

·带长度单位的数字

·比例关系

但是需要注意的是,在使用比例关系的时候,有人会认为浏览器默认的比例是相对段落的宽度而言的,其实事实并非如此,整个浏览器的窗口才是浏览器所默认的参照物。

另外,text-indent是块级属性,只能用于< p>、< blockquqte>、< ul>、< h1>~< h6>等标识符里。

 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
lxykx 当前离线

325

主题

0

广播

0

粉丝
添加关注
级别:三年级

用户积分:4196 分
登录次数:536 次
注册时间:2006/9/25
最后登录:2012/10/31
lxykx 发表于:2007/2/9 12:15:00   | 只看该作者 查看该作者主题 14楼 
科汛在线商城系统(NET)
六.控制字体的样式

控制字体的样式包括控制字体类型、字体大小、字体风格、字体粗细四个部分。

1.字体类型

平时在使用WORD之类的字处理软件的时候,经常需要调整字体的显示,比如说“Arial”、“Impact”、“Verdana”等字体都是笔者使用的较多的。

基本格式如下:

font-family: 字体名称

如果在font-family后加上多种字体的名称,浏览器回按字体名称的顺序逐一在用户的计算机里寻找已经安装的字体,一旦遇到与要求的相匹配的字体,就按这种字体显示网页内容,并停止搜索;如果不匹配就继续搜索,直到找到为止,万一样式表里的所有字体都没有安装的话,浏览器就会用自己默认的字体来替代显示网页的内容。

注意:

·当指定多种字体时,用“,”分隔每种字体名称。

·当字体名称包含两个以上分开的单词时,用“”把该字体名称括起来。

·当样式规则外已经有“”时,用‘’代替“”。

2.字体大小

基本格式如下:

font-size: 字号参数

字号的取值范围:

·以Point为单位:点单位在所有的浏览器和操作平台上都适用

·以Em为单位:指字母要素的尺寸,和Point相同距离

·以Pixes为单位:像素可以使用于所有的操作平台,但可能会因为浏览者的屏幕分辨率不同,而造成显示上的效果差异

·以in(英寸)为单位

·以cm(厘米)为单位

·以mm(毫米)为单位

·以pc(打印机的字体大小)为单位

·以ex(x-height)为单位

·smaller:比当前文字的默认大小更小一号

·larger:比当前文字的默认大小更小大号

·使用比例关系

·xx-small

·x-small

·small

·medium

·large

·x-large

·xx-large

3.字体风格

字体风格只能控制各种斜体字的显示。

基本格式如下:

font-style: 斜体字的名称

4.字体粗细

字体粗细控制粗体字的显示,取值范围从数字100~900,浏览器默认的字体粗细为400。另外可以通过参数lighter和bolder使得字体在原有基础上显得更细或更粗些。

基本格式如下:

font-weight: 字体粗细

 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
lxykx 当前离线

325

主题

0

广播

0

粉丝
添加关注
级别:三年级

用户积分:4196 分
登录次数:536 次
注册时间:2006/9/25
最后登录:2012/10/31
lxykx 发表于:2007/2/9 12:14:00   | 只看该作者 查看该作者主题 15楼 
科汛智能建站系统
三.层叠样式表的格式

一般来说,样式表的声明分为选择符(selector)和块{}(block),块里包含属性(properties)和属性的取值(value),基本格式如下:

选择符 {属性:值}

其它格式1:

选择符1,选择符2,选择符3 {属性1:值1;属性2:值2;属性3:值3}

有时候多个选择符将使用相同的设置,为了简化代码,我们可以一次性为它们设置样式,并在多个选择符之间加上“,”来分隔它们。

当有多个属性的时候,必须在两个属性之间用“;”来分隔。

其它格式2:

选择符1 选择符2 {属性1:值1;属性2:值2;属性3:值3}

和格式1非常相似,只是在选择符之间少加了“,”,但作用却大不相同。表示如果选择符2包括的内容同时包括在选择符1里的时候,所设置的样式规则才起作用。

四.层叠样式表的分类

为了使网页的格式不过分的单调,必需让相同的选择符也能分类,并能按照不同的类别来进行不同的样式设计。基本格式如下:

选择符.类别名 {属性:值}

类别名将可以在HTML的标识符里引用:

< 标识符 class=类别名>网页内容

五.层叠样式表的伪类

除了上述的分类方式外,为了使分类的使用更灵活多样,又产生了伪类的概念。类和伪类有什么样的区别呢?

一般地说,选择符可以和多个类采用捆绑的形式来设定,这样虽然能够为同一个选择符创建多种不同的样式,但捆绑的形式同时也限制了设定的类为其它的选择符所使用。伪类的产生就是为了解决这个问题,每个预声明的伪类都可以被所有的HTML标识符引用,当然有些块级内容的设置除外。基本格式如下:

.伪类名 {属性:值}

伪类可以被任何标识符在HTML里引用。

<标识符 class=伪类名>网页内容

 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
lxykx 当前离线

325

主题

0

广播

0

粉丝
添加关注
级别:三年级

用户积分:4196 分
登录次数:536 次
注册时间:2006/9/25
最后登录:2012/10/31
lxykx 发表于:2007/2/9 12:13:00   | 只看该作者 查看该作者主题 16楼 
科汛在线考试系统(NET)
从基础开始:CSS实用教程(一)

CSS(Cascading Stylesheets,层叠样式表)是一种制作网页的新技术,现在已经为大多数的浏览器所支持,成为网页设计必不可少的工具之一。使用CSS能够简化网页的格式代码,加快下载显示的速度,也减少了需要上传的代码数量,大大减少了重复劳动的工作量。尤其是当你面对的是有数百个网页的站点时,CSS简直象是神对我们的恩赐!^_^

前言

CSS(Cascading Stylesheets,层叠样式表)是一种制作网页的新技术,现在已经为大多数的浏览器所支持,成为网页设计必不可少的工具之一。

W3C(The World Wide Web Consortium)把动态HTML(Dynamic HTML)分为三个部分来实现:脚本语言(包括JavaScript、Vbscript等)、支持动态效果的浏览器(包括Internet Explorer、Netscape Navigator等)和CSS样式表。

一.层叠样式表的特点

且不说过去的网页缺少动感,就是在网页内容的排版布局上也有很多困难,如果不是专业人员或特别有耐心的人,很难让网页按自己的构思和创意来显示信息。即便是掌握了HTML语言精髓的人也要通过多次地测试,才能驾驭好这些信息的排版,过程十分漫长和痛苦。为了Internet的发展,让更多人早日踏足这个多姿多彩的世界,新的HTML辅助工具呼之欲出。

样式表就是在这种需求下诞生的,它首先要做的是为网页上的元素精确地定位,可以让网页设计者象导演一样,轻易地控制由文字、图片组成的演员们,在网页这个舞台上按剧本要求好好地表演。

其次,它把网页上的内容结构和格式控制相分离。浏览者想要看的是网页上的内容结构,而为了让浏览者更好地看到这些信息,就要通过格式控制来帮忙了。以前两者在网页上的分布是交错结合的,查看修改很不方便,而现在把两者分开就会大大方便网页的设计者。内容结构和格式控制相分离,使得网页可以光由内容构成,而将所有网页的格式控制指向某个CSS样式表文件。这样一来的好出表现在两个方面:

第一,简化了网页的格式代码,外部的样式表还会被浏览器保存在缓存里,加快了下载显示的速度,也减少了需要上传的代码数量(因为重复设置的格式将被只保存一次)。

第二,只要修改保存着网站格式的CSS样式表文件就可以改变整个站点的风格特色,在修改页面数量庞大的站点时,显得格外有用。避免了一个一个网页的修改,大大减少了重复劳动的工作量,当你面对的是有数百个网页的站点时,CSS简直象是神对我们的恩赐!^_^

二.添加层叠样式表的方法

我们为网页添加样式表的方法有四种。

1.最简单的方法是直接添加在HTML的标识符(tag)里:

< Tag style=”properties”>网页内容< /tag>

举个例子:

< p style=”color: blue; font-size: 10pt”>CSS实例< /p>

代码说明:

用蓝色显示字体大小为10pt的“CSS实例”。尽管使用简单、显示直观,但是这种方法不怎么常用,因为这样添加无法完全发挥样式表的优势“内容结构和格式控制分别保存”。

2.添加在HTML的头信息标识符< head>里:

< head>

< style type=”text/css”>

< !-- 样式表的具体内容 -->

< /style>

< /head>

type=”text/css”表示样式表采用MIME类型,帮助不支持CSS的浏览器过滤掉CSS代码,避免在浏览器面前直接以源代码的方式显示我们设置的样式表。但为了保证上述情况一定不要发生,还是有必要在样式表里加上注释标识符“< !--注释内容-->”。

3.链接样式表

同样是添加在HTML的头信息标识符< head>里:

< head>

< link rel=”stylesheet” href=”*.css” type=”text/css” media=”screen”>

< /head>

*.css是单独保存的样式表文件,其中不能包含< style>标识符,并且只能以css为后缀。

Media是可选的属性,表示使用样式表的网页将用什么媒体输出。取值范围:

·Screen(默认):输出到电脑屏幕

·Print:输出到打印机

·TV:输出到电视机

·Projection:输出到投影仪

·Aural:输出到扬声器

·Braille:输出到凸字触觉感知设备

·Tty:输出到电传打字机

·All:输出到以上所有设备

如果要输出到多种媒体,可以用逗号分隔取值表。

Rel属性表示样式表将以何种方式与HTML文档结合。取值范围:

·Stylesheet:指定一个外部的样式表

·Alternate stylesheet:指定使用一个交互样式表

4.联合使用样式表

同样是添加在HTML的头信息标识符< head>里:

< head>

< style type=”text/css”>

< !--

@import “*.css”

其他样式表的声明

-->

< /style>

< /head>

以@import开头的联合样式表输入方法和链接样式表的方法很相似,但联合样式表输入方式更有优势。因为联合法可以在链接外部样式表的同时,针对该网页的具体情况,做出别的网页不需要的样式规则。

需要注意的是:

·联合法输入样式表必须以@import开头。

·如果同时输入多个样式表有冲突的时候,将按照第一个输入的样式表对网页排版。

·如果输入的样式表和网页里的样式规则冲突时,使用外部的样式表。

 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
lxykx 当前离线

325

主题

0

广播

0

粉丝
添加关注
级别:三年级

用户积分:4196 分
登录次数:536 次
注册时间:2006/9/25
最后登录:2012/10/31
lxykx 发表于:2007/2/9 12:13:00   | 只看该作者 查看该作者主题 17楼 
科汛在线考试系统(NET)
CSS的十八般技巧(五)

十七.调试技巧:层有多大?

当调试CSS发生错误,你就要象排版工人,逐行分析CSS代码。我通常在出问题的层上定义一个背景颜色,这样就能很明显看到层占据多大空间。有些人建议用border,一般情况也是可以的,但问题是,有时候border 会增加元素的尺寸,border-top和boeder-bottom会破坏纵向margin的值,所以使用background更加安全些。

另外一个经常出问题的属性是outline。outline看起来象boeder,但不会影响元素的尺寸或者位置。只有少数浏览器支持outline属性,我所知道的只有Safari、OmniWeb、和Opera。

十八.CSS代码书写样式

在写CSS代码的时候,对于缩进、断行、空格,每个人有每个人的书写习惯。在经过不断实践后,我决定采用下面这样的书写样式:

selector1,

selector2 {

property:value;

}

当使用联合定义时,我通常将每个选择器单独写一行,这样方便在CSS文件中找到它们。在最后一个选择器和大括号{之间加一个空格,每个定义也单独写一行,分号直接在属性值后,不要加空格。

我习惯在每个属性值后面都加分号,虽然规则上允许最后一个属性值后面可以不写分号,但是如果你要加新样式时容易忘记补上分号而产生错误,所以还是都加比较好。

最后,关闭的大括号}单独写一行。

空格和换行有助与阅读。

 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
lxykx 当前离线

325

主题

0

广播

0

粉丝
添加关注
级别:三年级

用户积分:4196 分
登录次数:536 次
注册时间:2006/9/25
最后登录:2012/10/31
lxykx 发表于:2007/2/9 12:08:00   | 只看该作者 查看该作者主题 18楼 
科汛在线考试系统(NET)
CSS的十八般技巧(三)

十二.用正确的顺序指定链接的样式

当你用CSS来定义链接的多个状态样式时,要注意它们书写的顺序,正确的顺序是::link :visited :hover :active。抽取第一个字母是"LVHA",你可以记忆成"LoVe HAte"(喜欢讨厌)。为什么这么定义,可以参考Eric Meyer的《Link Specificity》。

如果你的用户需要用键盘来控制,需要知道当前链接的焦点,你还可以定义:focus属性。:focus属性的效果也取决与你书写的位置,如果你希望聚焦元素显示:hover效果,你就把:focus写在:hover前面;如果你希望聚焦效果替代:hover效果,你就把:focus放在:hover后面。

十三.清除浮动

一个非常常见的CSS问题,定位使用浮动的时候,下面的层被浮动的层所覆盖,或者层里嵌套的子层超出了外层的范围。

通常的解决办法是在浮动层后面添加一个额外元素,例如一个div或者一个br,并且定义它的样式为clear: both。这个办法有一点牵强,幸运的是还有一个好办法可以解决,参看这篇文章《How To Clear Floats Without Structural Markup》(注:本站将尽快翻译此文)。

上面2种方法可以很好解决浮动超出的问题,但是如果当你真的需要对层或者层里的对象进行clear的时候怎么办?一种简单的方法就是用overflow属性,这个方法最初的发表在《Simple Clearing of Floats》,又在《Clearance》和《Super simple clearing floats》中被广泛讨论。

上面那一种clear方法更适合你,要看具体的情况,这里不再展开论述。另外关于float的应用,一些优秀的文章已经说得很清楚,推荐你阅读:《Floatutorial》、《Containing Floats》和《Float Layouts》

十四.横向居中(centering)

这是一个简单的技巧,但是值得再说一遍,因为我看见太多的新手问题都是问这个:CSS如何横向居中?你需要定义元素的宽,并且定义横向的margin,如果你的布局包含在一个层(容器)中,就象这样:

你可以这样定义使它横向居中:

#wrap {

width:760px; /* 修改为你的层的宽度 */

margin:0 auto;

}

但是IE5/Win不能正确显示这个定义,我们采用一个非常有用的技巧来解决:用text-align属性。就象这样:

body {

text-align:center;

}

#wrap {

width:760px; /* 修改为你的层的宽度 */

margin:0 auto;

text-align:left;

}

第一个body的text-align:center; 规则定义IE5/Win中body的所有元素居中(其他浏览器只是将文字居中) ,第二个text-align:left;是将#warp中的文字居左。

 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
lxykx 当前离线

325

主题

0

广播

0

粉丝
添加关注
级别:三年级

用户积分:4196 分
登录次数:536 次
注册时间:2006/9/25
最后登录:2012/10/31
lxykx 发表于:2007/2/9 12:07:00   | 只看该作者 查看该作者主题 19楼 
CSS的十八般技巧(一)

翻译:阿捷

原文作者:Roger Johansson

作者简介:住在瑞典哥德堡,1994年开始接触和参与web设计,456 Berea Street是他的住址,因此采用这个名字作为他的个人主页域名

最近,经常有朋友问我一些工作中遇到的CSS问题。他们总是不能很好的控制CSS,影响CSS的效率发挥。我来分析总结一下错误所在,帮助大家更加容易使用CSS。

本文总结了我开始使用CSS布局方法以来所有的技巧和兼容方案,我愿意把这些与你分享,我会重点解释一些新手容易犯的错误(包括我自己也犯过的),如果你已经是CSS高手,这些经验技巧可能已经都知道,如果你有更多的,希望可以帮我补充。

一.使用css缩写

使用缩写可以帮助减少你CSS文件的大小,更加容易阅读。css缩写的主要规则请参看《常用css缩写语法总结》,这里就不展开描述。

二.明确定义单位,除非值为0

忘记定义尺寸的单位是CSS新手普遍的错误。在HTML中你可以只写width="100",但是在CSS中,你必须给一个准确的单位,比如:width:100px width:100em。只有两个例外情况可以不定义单位:行高和0值。除此以外,其他值都必须紧跟单位,注意,不要在数值和单位之间加空格。

三.区分大小写

当在XHTML中使用CSS,CSS里定义的元素名称是区分大小写的。为了避免这种错误,我建议所有的定义名称都采用小写。

class和id的值在HTML和XHTML中也是区分大小写的,如果你一定要大小写混合写,请仔细确认你在CSS的定义和XHTML里的标签是一致的。

四.取消class和id前的元素限定

当你写给一个元素定义class或者id,你可以省略前面的元素限定,因为ID在一个页面里是唯一的,而clas s可以在页面中多次使用。你限定某个元素毫无意义。例如:

div#content { /* declarations */ }

fieldset.details { /* declarations */ }

可以写成

#content { /* declarations */ }

.details { /* declarations */ }

这样可以节省一些字节。

五.默认值

通常padding的默认值为0,background-color的默认值是transparent。但是在不同的浏览器默认值可能不同。如果怕有冲突,可以在样式表一开始就先定义所有元素的margin和padding值都为0,象这样:

* {

margin:0;

padding:0;

}

六.不需要重复定义可继承的值

CSS中,子元素自动继承父元素的属性值,象颜色、字体等,已经在父元素中定义过的,在子元素中可以直接继承,不需要重复定义。但是要注意,浏览器可能用一些默认值覆盖你的定义。

七.最近优先原则

如果对同一个元素的定义有多种,以最接近(最小一级)的定义为最优先,例如有这么一段代码

Update: Lorem ipsum dolor set

在CSS文件中,你已经定义了元素p,又定义了一个class"update"

p {

margin:1em 0;

font-size:1em;

color:#333;

}

.update {

font-weight:bold;

color:#600;

}

这两个定义中,class="update"将被使用,因为class比p更近。你可以查阅W3C的《 Calculating a selector’s specificity》 了解更多。

八.多重class定义

一个标签可以同时定义多个class。例如:我们先定义两个样式,第一个样式背景为#666;第二个样式有10 px的边框。

.one{width:200px;background:#666;}

.two{border:10px solid #F00;}

在页面代码中,我们可以这样调用

<div class="one two"></div>

这样最终的显示效果是这个div既有#666的背景,也有10px的边框。是的,这样做是可以的,你可以尝试一下。

 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
lxykx 当前离线

325

主题

0

广播

0

粉丝
添加关注
级别:三年级

用户积分:4196 分
登录次数:536 次
注册时间:2006/9/25
最后登录:2012/10/31
lxykx 发表于:2007/2/9 12:06:00   | 只看该作者 查看该作者主题 20楼 
做在线知识付费 选科汛云开店
10个你未必知道的CSS技巧

1.CSS字体属性简写规则

一般用CSS设定字体属性是这样做的:

font-weight:bold;

font-style:italic;

font-varient:small-caps;

font-size:1em;

line-height:1.5em;

font-family:verdana,sans-serif;

但也可以把它们全部写到一行上去:

font: bold italic small-caps 1em/1.5em verdana,sans-serif;

真不错!只有一点要提醒的:这种简写方法只有在同时指定font-size和font-family属性时才起作用。而且,如果你没有设定font-weight, font-style, 以及 font-varient ,他们会使用缺省值,这点要记上。

2. 同时使用两个类

一般只能给一个元素设定一个类(Class),但这并不意味着不能用两个。事实上,你可以这样:

<p class="text side">...</p>

同时给P元素两个类,中间用空格格开,这样所有text和side两个类的属性都会加到P元素上来。如果它们两个类中的属性有冲突的话,后设置的起作用,即在CSS文件中放在后面的类的属性起作用。

补充:对于一个ID,不能这样写<p id="text side">...</p>也不能这样写

3. CSS border的缺省值

通常可以设定边界的颜色,宽度和风格,如:

border: 3px solid #000

这位把边界显示成3像素宽,黑色,实线。但实际上这里只需要指定风格即可。

如果只指定了风格,其他属性就会使用缺省值。一般地,Border的宽度缺省是medium,一般等于3到4个像素;缺省的颜色是其中文字的颜色。如果这个值正好合适的话,就不用设那么多了。

4. CSS用于文档打印

许多网站上都有一个针对打印的版本,但实际上这并不需要,因为可以用CSS来设定打印风格。

也就是说,可以为页面指定两个CSS文件,一个用于屏幕显示,一个用于打印:

<link type="text/css" rel="stylesheet" href="stylesheet.css" media="screen" /> <link type="text/css" rel="stylesheet" href="printstyle.css" media="print" />

第1行就是显示,第2行是打印,注意其中的media属性。

但应该在打印CSS中写什么东西呢?你可以按设计普通CSS的方法来设定它。设计的同时就可以把这个CSS设成显示CSS来检查它的效果。也许你会使用 display: none 这个命令来关掉一些装饰图片,再关掉一些导航按钮。要想了解更多,可以看“打印差异”这一篇。

5. 图片替换技巧

一般都建议用标准的HTML来显示文字,而不要使用图片,这样不但快,也更具可读性。但如果你想用一些特殊字体时,就只能用图片了。

比如你想整个卖东西的图标,你就用了这个图片:

<h1><img src="widget-image.gif" alt="Buy widgets" /></h1>

这当然可以,但对搜索引擎来说,和正常文字相比,它们对alt里面的替换文字几乎没有兴趣这是因为许多设计者在这里放许多关键词来骗搜索引擎。所以方法应该是这样的:

<h1>Buy widgets</h1>

但这样就没有特殊字体了。要想达到同样效果,可以这样设计CSS:

h1 { background: url(widget-image.gif) no-repeat; height: image height text-indent: -2000px }

注意把image height换成真的图片的高度。这里,图片会当作背景显示出来,而真正的文字由于设定了-2000像素这个缩进,它们会出现在屏幕左边2000点的地方,就看不见了。但这对于关闭图片的人来说,可能全部看不到了,这点要注意。

6. CSS box模型的另一种调整技巧

这个Box模型的调整主要是针对IE6之前的IE浏览器的,它们把边界宽度和空白都算在元素宽度上。比如:

#box { width: 100px; border: 5px; padding: 20px }

这样调用它:

<div id="box">...</div>

这时盒子的全宽应该是150点,这在除IE6之前的IE浏览器之外的所有浏览器上都是正确的。但在IE5这样的浏览器上,它的全宽仍是100点。可以用以前人发明的Box调整方法来处理这种差异。

但用CSS也可以达到同样的目的,让它们显示效果一致。

#box { width: 150px } #box div { border: 5px; padding: 20px }

这样调用:

<div id="box"><div>...</div></div>

这样,不管什么浏览器,宽度都是150点了。

7. 块元素居中对齐

如果想做个固定宽度的网页并且想让网页水平居中的话,通常是这样:

#content { width: 700px; margin: 0 auto }

你会使用 <div id="content"> 来围上所有元素。这很简单,但不够好,IE6之前版本会显示不出这种效果。改CSS如下:

body { text-align: center } #content { text-align: left; width: 700px; margin: 0 auto }

这会把网页内容都居中,所以在Content中又加入了

text-align: left 。

8. 用CSS来处理垂直对齐

垂直对齐用表格可以很方便地实现,设定表格单元 vertical-align: middle 就可以了。但对CSS来说这没用。如果你想设定一个导航条是2em高,而想让导航文字垂直居中的话,设定这个属性是没用的。

CSS方法是什么呢?对了,把这些文字的行高设为 2em:line-height: 2em ,这就可以了。

9. CSS在容器内定位

CSS的一个好处是可以把一个元素任意定位,在一个容器内也可以。比如对这个容器:

#container { position: relative }

这样容器内所有的元素都会相对定位,可以这样用:

<div id="container"><div id="navigation">...</div></div>

如果想定位到距左30点,距上5点,可以这样:

#navigation { position: absolute; left: 30px; top: 5px }

当然,你还可以这样:

margin: 5px 0 0 30px

注意4个数字的顺序是:上、右、下、左。当然,有时候定位的方法而不是边距的方法更好些。

10. 直通到屏幕底部的背景色

在垂直方向是进行控制是CSS所不能的。如果你想让导航栏和内容栏一样直通到页面底部,用表格是很方便的,但如果只用这样的CSS:

#navigation { background: blue; width: 150px }

较短的导航条是不会直通到底部的,半路内容结束时它就结束了。该怎么办呢?

不幸的是,只能采用欺骗的手段了,给这较短的一栏加上个背景图,宽度和栏宽一样,并让它的颜色和设定的背景色一样。

body { background: url(blue-image.gif) 0 0 repeat-y }

此时不能用em做单位,因为那样的话,一旦读者改变了字体大小,这个花招就会露馅,只能使用px。

原文出处:http://blog.csdn.net/zhoujian2003/archive/2006/04/28/696012.aspx

 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
<上一主题 | 下一主题 >
Powered By KesionCMS Version X1
厦门科汛软件有限公司 © 2006-2016 页面执行0.24219秒 powered by KesionCMS 9.0