1
2
3
如何使整个页面内容居中,如何使高度自适应内容自动伸缩,这是学习CSS布局最常见的问题。
下面给出一个实际的列子,附详细说明。
首先可以将下列代码复制到html文件中运行一下,在mozilla、opera和ie浏览其中,均可达到居中且自适应高度的要求。
body
{
background:#999;
text-align:center;
color:#333;
font-family:Arial, Verdana, Sans-serif;
}
#header
{
width:776px;
margin-left:auto;
margin-right:auto;
padding:0px;
background:#eee;
height:60px;
text-align:center;
}
#container
{
margin-left:auto;
margin-right:auto;
width:776px;
}
#mainbg
{
width:776px;
padding: 0px;
background:#60A179;
float:left;
}
#right
{
float:right;
margin:2px 0px 2px 0px;
padding:0px;
width:574px;
background:#ccd2de;
text-align:left;
}
#left
{
float:left;
margin:2px 2px 0px 0px;
padding:0px;
background:#f2f3f7;
width:200px;
text-align:left;
}
#footer
{
clear:both;
width:776px;
margin-right:auto;
margin-left:auto;
padding:0px;
background:#eee;
height:60px;
}
.text
{
margin:0px;
padding:20px;
}
1
2
3
首先我们定义了body和顶部区域#header,这里面关键的是body中的text-align:center;以及header中的margin-left:auto和margin-right:auto;作用是似的header区域在浏览器中居中。注意:在IE中只需要定义body的text-align:center就可以居中了,但是在mozilla(firefox)中必须有margin:auto才可以。
接下来是left和right区域。为了是这两列也能居中,现在其外部嵌套一层container,并且设置margin:auto,道理和上面一样。这样left和right整体的也居中了。
你也许奇怪,问什么在container和left、right之间还有一层mainbg,这个层有什么作用呢?这个层是用来定义背景的,那么为什么不直接在container中定义背景呢,而要在多套一层呢?原因还是mozilla(firefox)在作怪(你总不希望自己做的网页在firefox和ie中显示的效果不一样吧),在ie中不需要多嵌套一层,在mozilla中,必须定义高度值才可以显示背景,但是指定高度的话,又无法实现自适应高度的要求,所以多加了一层mainbg,窍门在与mainbg这个层的float:left;这样定义,不指定高度也可以显示背景。
最后定义的是底部的footer层。该层的关键点在于clear:both;这句话的作用是取消footer层的浮动继承。否则,你会看到footer紧贴这header显示,还是mozilla做得怪:)
按说到这里就over了,可是细心的朋友会看到left和right分别嵌套了一个层,这两个层都使用了.text{margin:0px;padding:20px},这又是为什么呢?原因是mozilla和ie对于盒子模型的解释不一样,直接定义margin、padding会造成mozilla和ie中显示的不一致。所以,遇到ie和mozilla不一致的时候,往往多加一层会解决问题。
人工智能驱动的应用程序,用于创建逼真的裸体照片
用于从照片中去除衣服的在线人工智能工具。
免费脱衣服图片
AI脱衣机
免费生成ai无尽的。
好用且免费的代码编辑器
中文版,非常好用
功能强大的PHP集成开发环境
视觉化网页开发工具
神级代码编辑软件(SublimeText3)
本文讨论了HTML< Progress>元素,其目的,样式和与< meter>元素。主要重点是使用< progress>为了完成任务和LT;仪表>对于stati
本文讨论了html< datalist>元素,通过提供自动完整建议,改善用户体验并减少错误来增强表格。Character计数:159
本文讨论了HTML< meter>元素,用于在一个范围内显示标量或分数值及其在Web开发中的常见应用。它区分了< meter>从< progress>和前
本文讨论了视口元标签,这对于移动设备上的响应式Web设计至关重要。它解释了如何正确使用确保最佳的内容缩放和用户交互,而滥用可能会导致设计和可访问性问题。
本文解释了HTML5< time>语义日期/时间表示的元素。 它强调了DateTime属性对机器可读性(ISO 8601格式)的重要性,并在人类可读文本旁边,增强Accessibilit
本文讨论了使用HTML5表单验证属性,例如必需的,图案,最小,最大和长度限制,以直接在浏览器中验证用户输入。
本文讨论了< iframe>将外部内容嵌入网页,其常见用途,安全风险以及诸如对象标签和API等替代方案的目的。