|
作者:Steve Mulder 我们在第2天的教程中学习了字体及控制文字字符的方法.今天我们将学习这些字符、单词和每行的内容之间是如何定位的。我们将学会如何设定字与字之间、字母之间的距离,以及行距(垂直间距)、文字的对齐方式、边距、边框及浮动要素等,列表如下:
很显然,今天我们要学很多东西,所以我们得抓紧时间。让我们开始吧! 下面要学习的属性可以使你做到HTML标签做不到的事情:控制字间距及字母间距。 字间距 利用字间距属性,你可以在字之间加入更多的距离: H3 { word-spacing: 1em } 你所使用的参数值将加入任何浏览器的缺省设置,你可以使用我们昨天谈到的任何一种长度单位:
以下为显示结果: Behold the power of cheese.如果你的浏览器不支持这种CSS属性,请点击这里查看显示效果。 如果你看不到任何不同之处,则说明你的浏览器不支持这种属性,只有MAC机用的IE4能支持这种字间距设置。 字母间距 字母间距可以在IE 4中应用,但Communicator不行,唉... H3 { letter-spacing: 10px } 字母间距的功能和字间距的很类似:其参数值将被加入到浏览器的缺省设置中,你可以使用上述任何一种长度单位。 如果你用的是IE 4,这里是一个例子: Behold the power of cheese.如果你的浏览器不支持这种CSS属性,请点击这里查看显示效果。 对于这两种属性,你都可以使用normal参数。从而使其按照浏览器的原有缺省设置显示。 别沮丧,还有很多CSS属性可以在两种浏览器上都可使用。下文中就是一个例子。 行与行之间的距离最常用的称呼是行距,而当网页设计者们发现他们能够控制行距时最常用的称呼是"Weee!" 行高 行高简直是上帝发给人间的福音。利用行高我们可以随心所欲地控制行与行之间的垂直距离。 B { line-height: 16pt } 你所用的参数就是相邻两行的基准线(基准线就是英文小写字母如x,a的下阶线,但不包括诸如y,g等字母超过下阶线的部分)之间的垂直距离。注意你所设定的参数将完全代替浏览器的缺省参数。 Netscape Communitor和Internet Explorer在行之前加入行高参数。所以如果你将参数设为10px,浏览器将把文字的第1行以10px的高度显示。 有3种设定行高的方法:
用数字设行距 B { font-size: 12pt; line-height: 2 } 当你用数字设定行高的时候,浏览器将利用字号来确定行距:它将字号乘以设定的参数值。所以,在本例中,行高将是24点。显示效果如下:
如果你的浏览器不支持这种CSS属性,请点击这里查看显示效果。 你还可以用小数设定参数值。 (你应该知道IE 3 不支持数字参数值,在IE 3 中使用数字参数将出现大片文字的互相重叠。) 用长度单位设定行距 B { font-size: 12pt; line-height: 11pt } 设定行高的另一种方法就是利用先前学过的长度单位(em及pt是最常用的单位),以下为显示效果:
如果你的浏览器不支持这张CSS属性,请点击这里查看显示效果。 你既可以轻松地将行距缩小也可以将行距放大。有了样式表,这一切都易如反掌! 用比例设定行距 B { font-size: 10pt; line-height: 140% } 在本例中,行距是长度10points的140%,即14points。明白了吗? 让文字互相重叠! 你可能会问这样的问题:如果行距太小的话,文字岂不就重叠在一起了吗?是这样的。我们来看看这个例子: B { font-size: 28pt; line-height: 2pt } 以下为显示效果: Whoa. Cool. 如果你的浏览器不支持这张CSS属性,请点击这里查看显示效果。 "Whoa" 使用了浏览器的缺省行高设置。但"Cool"的行高很小所以它和第1行重叠了。 (Communicator 和 Internet Explorer 对行高的诠释有所不同。 Communicator将只是将文字的上半部分重叠一点,而IE则将其全部重叠。) 如果你计划将你的网页中的某些内容重叠显示,行高设置还不是最佳的选择,因为不同的浏览器对其的支持有差别。在第5天的课程中我们将研究文字及图象布局的最佳方式。 现在我们谈谈段落及图象的对齐和加入段落缩行。 文字对齐 利用文字对齐属性,你可以控制段落的水平对齐: H4 { text-align: center } 这项属性只用于整块的内容,如<P>、 <H1>-<H6>、<BLOCKQUOTE>和 <UL>。 以下为各种选项: left指将要素左对齐,如本段所示。right指将要素右对齐,如本段所示。 center指将要素居中,如本段所示。justify指将要素左右对齐,如本段所示。justify 属性可用于Communicator (两种操作平台) 及IE 4 (Windows版), 但不能用于MAC机的IE 3或IE 4。 如果你的浏览器不支持这种CSS属性,请点击这里查看显示效果。 截止现在,我们所谈到的只是将CSS用于文字,但CSS
的属性页可以用于其它替代要素(替代要素指用其它内容代替了的要素,图象是最常用的替代内容,还有Java
所以我们可以将图象右对齐,如下所示:
如果你的浏览器不支持这种CSS属性,请点击这里查看显示效果。 (如果你将样式表属性直接加到<IMG>之上,Communicator有时候可能会捣乱。为了安抚它的这种驴脾气,你可以将<IMG>包含在<SPAN>或<DIV>之内,然后将样式表加到<SPAN>或<DIV>上,最好是加在<DIV>上,因为IE 4有时候对于联结到<SPAN>上的样式会闹一点小性子。 垂直对齐 目前浏览器根本还不能支持初衷对齐属性,但愿5.0版的浏览器能够做到这一点。 H4 { vertical-align: top } 垂直对齐可以使你控制文字或替代要素(比如图象)相对于其母体要素的的垂直位置。例如,如果你将一个2x2象素的GIF图象同其母体要素文字的顶部垂直对齐,则该GIF 图象将在该行文字的顶部显示。 以下为各项参数:
目前只有IE 4能支持这项属性,它支持最后的两项参数。 文字缩行 你想使段落缩行吗?(在Internet上呆一段时间之后,你可能已经忘了缩行是怎么一回事!) P { text-indent: 2em } 在本段中你就可以看到缩行的应用。该属性只应用于整块的内容。你可以使用任何一种熟悉的长度单位设定缩行。 你还可以使用比例参数。例如,本段的缩行为40%的比例,即本段的第1行的起始位置比其正常位置缩进了40%。(Windows版的IE 4假定比例指相对于整个浏览器窗口。而不是指段落的宽度) 如果你将文字缩行赋予一个负值,则文字第1行的起始位置比其正常位置还偏左。本段的文字缩行赋值为-10象素。IE 4对这项属性不太适应,它有可能不显示最初的几个字母。 上两段用CSS文字缩行属性写出。如果你的浏览器不支持这项属性,请点击这里查看显示效果。 充分运用你的缩行威力吧,年轻的杰地战士! 我们都知道可以用HTML设定边距,但你必须使用表格,别无它法。而样式表则...... 快速定义边距 首先,我们应该了解样式表语言的术语,以便我们理解正在谈什么。每一个整块的要素或替代要素都包含在样式表生成器称之为box的容器之内。box包括:
图示如下:
你可以分别控制空格填充、边框和边距,正如我们即将做的。顶边距、底边距、左边距和右边距这4项属性可以使你控制一个要素的四周的边距。如下: H4 { margin-top: 20px; margin-bottom: 5px; margin-left: 100px; margin-right: 55px }
你可以看到,每一个边距都可以有不同的设置。或者你可以设置一个边距,然后让浏览器用缺省设置设定其它的几个边距。你可以将边距应用于文字和替代要素(如 设定边距参数值最明显的方法是利用长度单位:px(象素)、pt(点数)等。你也可以用比例值设定边距。 以下是几个例子: 将边距值设为负值,你就可以将两个要素重叠在一起,例: Books are mind food 如果你的浏览器不支持这项属性,请点击这里查看显示效果。 上例中, "are mind food" 的底边距为-55象素,右边距为60象素。 使用负值使要素重叠的的缺陷是不同的浏览器对其处理方式不同。比如,在显示上述例子时,不同的4种主要浏览器(Communicator for PC, Communicator for Mac, IE for PC, IE for Mac)对文字重叠的程度不同。 另一个缺陷是你不能完全控制位于底部的内容,而且不同的浏览器对其显示也不同。例如, Communicator总是将图象显示在文字的上部。 IE似乎是将个要素按照其载入浏览器窗口的顺序显示各要素。 换句话说,如果你打算将几个要素叠放在一起,就不要对边距使用负值。今天的教程将教你如何叠放个要素。 浏览器对该属性的支持方面还应注意以下几点:
顶空格填充,底空格填充,左空格填充和右空格填充 空格填充的作用类似于边距控制,你可以设定一个要素的前后左右的空格填充的尺寸。 H4 { padding-top: 20px; padding-bottom: 5px; padding-left: 100px; padding-right: 55px } 你可以使用任何一种长度单位或比例值设定空格填充。其使用方法同边距的属性。 但是空格填充不能使用负值(而且,IE 3不支持空格填充属性)。 下面我们将探讨位于边距和空格填充之间的边框。 有几种样式表属性可以将网页要素周围加上边框。 (注意:IE 3和IE 4不支持任何边框属性。) 顶边框宽度,底边框宽度,左边框宽度和右边框宽度 你可以控制整个边框的宽度,也可以分别控制每一边的边框宽度: H4 { border-top-width: 2px; border-bottom-width: 5px; border-left-width: 1px; border-right-width: 1px } 以下是上述CSS规则的显示结果: 你还可以给替代要素加上边框,很好玩,是吧? 你无须给一个要素的每一边都加上边框。 你可以使用上述任何一种长度单位设定边框宽度,也可以使用内置关键字设定宽度: 本段文字的顶边框宽度参数值为thin。 本段文字的顶边框宽度参数值为medium。 本段文字的顶边框宽度参数值为thick。 如果你的浏览器不支持这项CSS属性,请点击这里查看显示效果。 如果你想使边框四面应用相同的宽度,很简单,使用border-width标签就可一次完成,例: IMG { border-width: 1in } 边框颜色 例: P { border-color: green; border-width: lin } 本段文字显示上述代码的执行效果。 如果你的浏览器不支持这项CSS属性,请点击这里查看英文原版的显示效果。 你可以使用浏览器认可的颜色或者直接使用RGB参数值,例: H4 { border-color: #FF0033; border-width: thick } 如果你想使边框的四边显示不同的颜色,你可以在设置中分别列出各种颜色: P { border-color: #666699 #FF0033 #000000 #FFFF99; border-width: 3px } 浏览器将第1种颜色理解为顶边框的颜色参数值,第2种颜色为右边框,然后是底边框,然后是左边框。 本段文字显示上述代码的执行效果。 注意: Communicator 不能识别多色彩,在Communicator中,你只能使用一种颜色。(如果你使用多色彩,Communicator很有可能用蓝色显示整个边框。我们也对此感到莫名其妙) 如果不使用边框颜色属性,则边框将以要素自身的颜色显示边框颜色。 边框样式 你还可以设定边框线的样式,例: P { border-style: double; border-width: 3px } 可以使用的关键字参数值如下:
如果你的浏览器不支持这项CSS属性,请点击这里查看显示效果。 我们在网页中经常看到浮动的图象和表格,只需对一个<IMG>标签使用ALIGN=left属性,文字就会绕到浮动图象的右边继续显示。样式表对于浮动要素有一个更为灵活的语法,也就是本篇中将要谈到的主题。 (IE3和IE 4不支持本页中谈到的任何功能。如果你使用IE 4,你将会看到一些奇怪的格式。) 浮动 浮动属性使你能将一个要素周围用文字包裹,不仅仅是包裹图象,而且能包裹整块的文字。 H4 { float: left } 本标题文字为向左浮动。你可以看到这项CSS规则应用于<H4>的文字。而本段内容则包裹在标题文字的右下边,就象是用文字包裹图象时的效果那样。你也可以使用向右浮动的参数值。 如果你的浏览器不支持这项CSS属性,请点击这里查看英文原版的显示效果。 如果浮动要素周围的边距太小,你可以使用之前学过的空格填充属性给它加大四周的空间(但似乎使用边距会造成问题)。 清除 如果你想使一段文字包裹某一要素,而下一段文字不包裹,你可以使用clear属性,很象HTML的CLEAR属性的用法(例: CLEAR=right)。 P { clear: left } 例:
第1、2段文字包裹了向左浮动的第1幅图象。 而使用了清除(clear)属性后,第4、5段文字中只有第4段包裹了图象,而第5段文字没有包裹。 下面我们做一个练习,请点击观看本页,然后自己重新制作出相同的效果。你必须安装4.0版本的浏览器以便使该例正确显示。该例中只有一幅图象,其余均为HTML和串接样式表。 (注意:由于不同的浏览器显示效果不同,所以你实际所看到的显示效果在IE 中可能有所差别。) 小问题:如何只使用CSS和HTML而无须gif就制造出下落阴影的效果?答案见明天的课程。 今天是个好天气。我们扩展了串接样式表等方面的学习,将文字和图象都置于我们的自由控制之下。它使我们可以做到普通的HTML标签不能做到的事情。 以下是我们今天学习内容的总结:
明天我们将继续探索串接样式表的神奇魅力。
|