当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > 布局遇到的问题 非常不错的见解

CSS样式表
简单学习CSS网页布局(初学者)
8个简单实用的CSS秘诀
Webjx收集基于CSS JS设计50款优秀的导航菜单
css word-break word-wrap 前台显示自动换行
css 自动换行 强制换行属性 (firefox+ie)
css 教学实例 漂亮的搜索框
CSS 折叠的菜单实现代码
关于html元素的 width属性无效果的解决方法
css 相对定位 绝对定位 浮动 分析
css 滑动门技术的介绍及实例分享
负边距创建自适应宽度的流体布局的实现方法
有利于SEO的DIV+CSS的命名规则小结
css盒子模型 css margin 外边框合并
css 优先级关系
input 文本框 文字垂直居中对齐 ie firefox
css margin-left在IE6下的问题的解决方法
IE8样式不正确显示问题
div中子div在firefox ie 水平居中对齐
css 不兼容性问题小结
CSS 3D立方体制作

CSS样式表 中的 布局遇到的问题 非常不错的见解


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 58 ::
收藏到网摘: n/a

前言
还未等到下一代WEB开发技术RIA技术成熟之前,当然还得与HTML作斗争。前段时间《网站重构》炒得挺热,
这些都是进步,的确给我们新的思想。在这里总结一些开发中的点滴经验。
布局
1、上下左右布局
刚开始学制作页面,用的是MM的DW软件,可视化,让更多人学会网页制作。
还记得当初做页面用的还是DW,一个朋友问过我这一样一句话:"做网页表格多还是用层多,有什么区别?"。
我告诉他其实DW中用布局-布局表格,很快画出整个页面的框架, 然后一步步细化。做页面是挺快的事情,建议用表格,用层不好控制位置。
现在想起来真是有点误导的成份。哈,不过也许,进步需要一个过程。
《网站重构》春风吹来,用层进行页面布局的确给予我们开发带来了新的思想。
优点:
页面更清晰,代码量减少;
CSS的应用更广泛。
上下排,分层清晰,代码demo:
<div id="head">
</div>
<div id="body">
</div>
<div id="bottom">
</div>

左右排,可以用绝对定位
#head{
position:absolute
top;10px;
left:200px;
}
<div id="head">
</div>

2、DIV中的尽量少嵌套DIV,可用<p><span>
3、用padding控制层之间的分隔
<div>
</div>
<div style="padding-top:10px">
</div>
4、用border制作结构之间的分隔线
<div style="border-bottom:1px #000 solid">
</div>
5、可以用CSS的少用图片
页面布局demo(可查看源码,比以往TABLE布局的清晰多了):
http://davidblog.blogdriver.com/davidblog/inc/demo_div.jpg
form
1、form的margin以及padding
以往在页面中插入一个表单时,总是觉得margin,padding默认不为0,有时会影响页面的布局.
可以用CSS将其设加0
form{
margin:0 0 0 0px;
padding:0 0 0 0px;
}
同样p标记或其它标记你也可以定义.
2、select
optgroup的应用
3、为checkbox或radio加上label
<input id=today type=radio value="" checked><label for=today >今日</label>
4、button
前一个项目用的是图片的button。逐渐发觉应用中的缺陷。
建议还是用CSS美化。
其实CSS可以实现更美观的button

table
该用table还是得用table的。table 始终有他优胜的一面。
例如一些数据显示的GRID或结构比较统一的,分行分列的布局.
table 相关技巧


CSS Expressions的应用
用CSS应用可减少代码的编写
1、table 鼠标事件
<style>
tr{
background-color:expression((this.rowIndex%2==0)?"#e5e5e5":"#e5e5e5");
ryo:expression(
onmouseover=function()
{this.style.backgroundColor='#ffffff'},
onmouseout=function()
{this.style.backgroundColor='#e5e5e5'}
)
}
</style>
2、
width:expression{document.body.clientWidth<800 ? "760" : "1003"}

值得留意的标记
<menu>
<li>菜单1</li>
<li>菜单2</li>
</menu>
<ul>
<li>
<dd>
<tt>
<u>
<fieldset>
<legend>Health information:</legend>
Height <input type="text" size="3" />
Weight <input type="text" size="3" />
</fieldset>
<sup>superscript</sup>