CSS样式设计技巧十则(2)

时间:2008-06-04 12:18:00 

六、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点了。

七、CSS设置块元素水平居中对齐

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

#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 。

八、用CSS来处理垂直对齐

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

九、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个数字的顺序是:上、右、下、左。当然,有时候定位的方法而不是边距的方法更好些。

十、直通到屏幕底部的背景色

  在垂直方向是进行控制是CSS所不能的。如果你想让导航栏和内容栏一样直通到页面底部,用表格是很方便的,但如果只用这样的CSS:
  #navigation { background: blue; width: 150px }
  较短的导航条是不会直通到底部的,半路内容结束时它就结束了。该怎么办呢?
  不幸的是,只能采用欺骗的手段了,给这较短的一栏加上个背景图,宽度和栏宽一样,并让它的颜色和设定的背景色一样。
  body { background: url(blue-image.gif) 0 0 repeat-y }
  此时不能用em做单位,因为那样的话,一旦读者改变了字体大小,这个花招就会露馅,只能使用px。

标签:技巧,css,样式
0
投稿

猜你喜欢

  • python如何为list实现find方法

    2022-01-14 09:15:56
  • 深入浅析Python 中 is 语法带来的误解

    2021-08-23 14:18:17
  • 用IE浏览器UTF-8页面是一片空白

    2009-06-14 19:55:00
  • python3启动web服务引发的一系列问题汇总

    2022-10-31 09:11:58
  • 浅谈Python中range和xrange的区别

    2021-04-18 14:52:13
  • CGO编程基础快速入门

    2024-02-05 05:20:58
  • JavaScript模板入门介绍

    2024-06-21 22:06:17
  • Spring+Mybatis+Mysql搭建分布式数据库访问框架的方法

    2024-01-19 07:46:18
  • Python实现yaml与json文件批量互转

    2023-11-20 07:07:54
  • python调用百度语音识别实现大音频文件语音识别功能

    2023-11-29 00:59:53
  • 标志设计如何正确使用字体

    2009-02-16 15:41:00
  • python输出结果刷新及进度条的实现操作

    2022-09-24 15:13:15
  • python 文本单词提取和词频统计的实例

    2022-10-25 04:53:03
  • Mysql常用命令行大全

    2009-01-15 16:34:00
  • BootStrap的alert提示框的关闭后再显示怎么解决

    2024-04-28 09:50:24
  • 如何由Sybase向SQL Server移植数据库

    2009-01-20 15:56:00
  • 优化Mysql数据库的8个方法

    2024-01-15 01:37:24
  • Python实现多项式拟合正弦函数详情

    2023-04-15 09:45:20
  • python先序遍历二叉树问题

    2023-10-09 10:25:30
  • python 如何在 Matplotlib 中绘制垂直线

    2021-05-29 05:38:10
  • asp之家 网络编程 m.aspxhome.com