![]() |
|
![]() |
|
|
![]() |
| CSS技术在网页设计中的重要性以及技巧 | |||
| CSS技术在网页设计中的重要性以及技巧 | |||
作者:raymond 文章来源:web 点击数: 更新时间:2006-10-30 ![]() |
|
||
|
一般用CSS设定字体属性是这样做的: font-weight:bold; 但也可以把它们全部写到一行上去: 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的宽度缺省是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来显示文字,而不要使用图片,这样不但快,也更具可读性。但如果你想用一些特殊字体时,就只能用图片了。 比如你想整个卖东西的图标,你就用了这个图片: 注意把image height换成真的图片的高度。这里,图片会当作背景显示出来,而真正的文字由于设定了-2000像素这个缩进,它们会出现在屏幕左边2000点的地方,就看不见了。但这对于关闭图片的人来说,可能全部看不到了,这点要注意。 6. CSS box模型的另一种调整技巧 这个Box模型的调整主要是针对IE6之前的IE浏览器的,它们把边界宽度和空白都算在元素宽度上。比如: #box { width: 100px; border: 5px; padding: 20px } 这样调用它: 但用CSS也可以达到同样的目的,让它们显示效果一致。 #box { width: 150px } #box div { border: 5px; padding: 20px } 这样调用: 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中又加入了 8. 用CSS来处理垂直对齐 垂直对齐用表格可以很方便地实现,设定表格单元 vertical-align: middle 就可以了。但对CSS来说这没用。如果你想设定一个导航条是2em高,而想让导航文字垂直居中的话,设定这个属性是没用的。 CSS方法是什么呢?对了,把这些文字的行高设为 2em:line-height: 2em ,这就可以了。 9. CSS在容器内定位 CSS的一个好处是可以把一个元素任意定位,在一个容器内也可以。比如对这个容器: #container { position: relative } 这样容器内所有的元素都会相对定位,可以这样用: #navigation { position: absolute; left: 30px; top: 5px } 当然,你还可以这样: 10. 直通到屏幕底部的背景色 在垂直方向是进行控制是CSS所不能的。如果你想让导航栏和内容栏一样直通到页面底部,用表格是很方便的,但如果只用这样的CSS: #navigation { background: blue; width: 150px } 较短的导航条是不会直通到底部的,半路内容结束时它就结束了。该怎么办呢? 不幸的是,只能采用欺骗的手段了,给这较短的一栏加上个背景图,宽度和栏宽一样,并让它的颜色和设定的背景色一样。 body { background: url(blue-image.gif) 0 0 repeat-y } 此时不能用em做单位,因为那样的话,一旦读者改变了字体大小,这个花招就会露馅,只能使用px。 1. Block和inline元素对比 相反地,inline元素的特点是: 用display: inline 或display: block命令就可以改变一个元素的这一特性。什么时候需要改变这一属性呢? 2. 再来一个box黑客方法 padding: 2em; 第一个宽度所有浏览器都认得,但IE5.x不认得第2行的宽度设置,只因为那一行上有空白的注释符号(多么蠢的语法分析!),所以IE5.x就用20减掉一些空白,而其他浏览器会用14这个宽度,因为它是第2行,会覆盖掉第1行。 3. 页面的最小宽度 min-width是个非常方便的CSS命令,它可以指定元素最小也不能小于某个宽度,这样就能保证排版一直正确。但IE不认得这个,而它实际上把width当做最小宽度来使。为了让这一命令在IE上也能用,可以把一个<div> 放到 <body> 标签下,然后为div指定一个类: <body> 然后CSS这样设计: #container 第一个min-width是正常的;但第2行的width使用了Javascript,这只有IE才认得,这也会让你的HTML文档不太正规。它实际上通过Javascript的判断来实现最小宽度。 同样的办法也可以为IE实现最大宽度: #container 4. IE与宽度和高度的问题 IE不认得min-这个定义,但实际上它把正常的width和height当作有min的情况来使。这样问题就大了,如果只用宽度和高度,正常的浏览器里这两个值就不会变,如果只用min-width和min-height的话,IE下面根本等于没有设置宽度和高度。 比如要设置背景图片,这个宽度是比较重要的。要解决这个问题,可以这样: .box html>body .box 所有的浏览器都可以使用第一个box设置,但IE不认得第2段设置,因为其中用到了子选择器命令。第2个设置更特殊些,所以它会覆盖掉第1个设置。 5. 字体变形命令 text-transform 命令很有用,它有3个值:text-transform: uppercase, text-transform: lowercase 和 text-transform: capitalize。第1个会把文字变成全大写,第2个变成全小写,第3个变成首字母大写。这对拼音文字非常有用,即使输入时有大小写错误,在网页上也看不到。 6. IE中图片文字消失的问题 有时会遇到文字或背景图突然消失的问题,刷新一下又出现了,这在靠近漂浮元素时更容易发生(注:没见过)。此时,可以为消失的元素设定: position: relative ,如果不行,再考虑为这些元素指定一个宽度试试。 7. 不可见文字 不论因为何种原因希望某些网页文字不在浏览器中显示,比如为了打印或为了小屏幕而让某些文字不显示,都可以用 display: none 。这非常简单,但有时对某些人这有点没用,他们能去掉这个控制,这时就要用到: position: absolute; left: -9000px 。 这实际上是把文字指定在页面以外显示。 8. 为手持设备设计专门的CSS 也就是手机/PDA等小屏幕用户,可以专门设计一个CSS来让网页显示更舒服些。为此,可以把浏览器窗口调整到150点宽来看效果。指定专门的手持设备的CSS的语法是: <link type="text/css" rel="stylesheet" href="handheldstyle.css" media="handheld" /> 也可以阅读专门的手持设备可用性。 9. 3D效果的按钮 以前要想制作带有3D效果,并且点击下去还会变化的按钮,就得用图片替换的方法,现在CSS就可以了: a a:hover 至于效果,还可以自己调整了。 10. 在不同页面上使用同样的导航代码 许多网页上都有导航菜单,当进入某页时,菜单上相应这一项就应该变灰,而其他页亮起来。一般要实现这个效果,需要写程序或专门为每一页做设计,现在靠CSS就可以实现这个效果。 首先,在导航代码中使用CSS类: <ul> 然后分别为每一页的Body指定一个id,和上面类同名。如<body id="contact">。 然后设计CSS如下:
#home .home, #about .about, #about .about 这里,当id设为home时,.home就会起作用,也就是class设为home的那一行导航条就会显示出特殊效果来。其他页也是如此。
|
|||
| 文章录入:raymond 责任编辑:raymond | |||
| 【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 | |||
![]() |
| 最新热点 | 最新推荐 | 相关文章 | ||
| 让css使网页图片半透明 ASP的随机数的应用技术 使用ASP脚本技术 div+css布局入门 CSS入门教程之CSS的语法 用CSS来控制网页背景 CSS重新定义项目符号和编号 CSS技术在网页设计中的运用 CSS基础学习:样式表CSS简明… 从基础开始:CSS实用教程(三… |
|
|
||||||
|
|
www.it201.com/,本站大部分资料来自网络,如果侵犯了您的版权,请通知我们,我们会立刻删除! 站长:黑郁金香[QQ:20134637],蓝玫儿[QQ:512116384] 任强[QQ:271314106]糖糖[QQ:345167482] 皮皮 本站合作伙伴护肤中国 |