发布网友 发布时间:2022-04-07 10:40
共3个回答
懂视网 时间:2022-04-07 15:01
HTML实现2列布局,左侧宽度固定,右侧自适应
实现一:
<style> body, html{padding:0; margin:0;} // 根据CSS定位,利用浮动或绝对定位,使左侧的块元素脱离常规文档流,可以与右边块元素并列 div:nth-of-type(1){ float: left; //利用浮动 // postion: absolute; //利用绝对定位 // top: 0; // left: 0; width: 300px; height: 200px; background: red; } // 【块级元素,默认自动填充父元素宽度,霸占一行】 // 当前:右侧块元素宽度=父元素宽度 div:nth-of-type(2){ // 设置margin-left为左侧块元素的宽度。 margin-left: 300px; // 现在:右侧块元素的宽度=父元素宽度-margin-left height: 220px; background: blue; } </style> <html> <div>div1</div> <div>div2</div> </html>
1)设置margin-left之前
2)设置margin-left之后
实现二:
<style> body, html{padding:0; margin:0;} // 根据CSS定位,利用浮动或绝对定位,使左侧的块元素脱离常规文档流 div:nth-of-type(1){ float: left; //利用浮动 // postion: absolute; //利用绝对定位 // top: 0; // left: 0; width: 300px; height: 200px; background: red; } // FC是普通(常规)文档流,格式化上下文,是页面中的一块渲染区域,有一套渲染规格。BFC是块级格式化上下文。 // 利用BFC块级格式化上下文,建立一个隔离的独立容器 div:nth-of-type(2){ // 改变overflow的值不为visible,触发BFC overflow: hidden; height: 220px; background: blue; } </style> <html> <div>div1</div> <div>div2</div> </html>
热心网友 时间:2022-04-07 12:09
接下来我们在桌面新建一个文件夹,命名为“DIV+CSS布局练习”,在文件夹下新建两个空的记事本文档,输入以下内容: 无标题文档 这是XHTML的基本结构,将其命名为index.htm,另一个记事本文档则命名为css.css。 下面,我们在标签对中写入DIV的基本结构,代码如下: [color=#aaaaaa][/color] [color=#aaaaaa][/color] [color=#aaaaaa][/color] [color=#aaaaaa][/color] [color=#aaaaaa][/color] [color=#aaaaaa][/color] 为了使以后阅读代码更简易,我们应该添加相关注释,接下来打开css.css文件,写入CSS信息,代码如下: /*基本信息*/ body {font:12px Tahoma;margin:0px;text-align:center;background:#FFF;} /*页面层容器*/ #container {width:100%} /*页面头部*/ #Header {width:800px;margin:0 auto;height:100px;background:#FFCC99} /*页面主体*/ #PageBody {width:800px;margin:0 auto;height:400px;background:#CCFF00} /*页面底部*/ #Footer {width:800px;margin:0 auto;height:50px;background:#00FFFF} 把以上文件保存,用浏览器打开,这时我们已经可以看到基础结构了,这个就是页面的框架了。 关于以上CSS的说明(详细请参考CSS2.0中文手册,网上有下载): 1、请养成良好的注释习惯,这是非常重要的; 2、body是一个HTML元素,页面中所有的内容都应该写在这标签对之内,我就不多说了; 3、讲解一些常用的CSS代码的含义: font:12px Tahoma; 这里使用了缩写,完整的代码应该是:font-size:12px;font-family:Tahoma;说明字体为12像素大小,字体为Tahoma格式; margin:0px; 也使用了缩写,完整的应该是: margin-top:0px;margi热心网友 时间:2022-04-07 13:27
第一种方法,网上流传比较广的方法。采用左列left浮动,右列不浮动,采用margin-left定位的方式。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh-CN" lang="zh-CN">
<head>
<style type="text/css">
#left
{width:100px;height:100px;background-color:#ccc;border:2px solid #333;
float:left;
}
#right
{height:300px;margin-left:104px; border:2px solid #333;background:#ccc url(http://www.baidu.com/img/_logo.gif) no-repeat;
}
</style>
</head>
<body>
<div id="left"> left </div>
<div id="right"> 1111<br />1111<br />1111<br />1111<br />1111<br />1111<br />111<br />11</div>
</body>
</html>
第二种方法:采用左列向左浮动,右列绝对定位left。为解决ie6下右列不撑开问题,在右列中设置一元素右浮动。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style type="text/css">
#sidebar
{width:100px;height:100px;float:left;background-color:#cccccc;border:2px solid #333333;}
#Wrap
{position:absolute;left:113px;right:0px;height:300px;border:2px solid #333333;
background:#ccc url(http://www.baidu.com/img/_logo.gif) no-repeat;}
#floatSpan {float:right;} //for ie6
</style>
</head>
<body>
<div id="sidebar"> left </div>
<div id="Wrap"> right<br />right<br />right<br />right<br />right<br />right<br />right<br />right<br />right<br /> <span id="floatSpan"><span>
</div>
</body>
</html>。