作业:固定定位和双飞翼布局
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>双飞翼手写</title>
<style>
.header,.footer {
width: 100%;
/*高度就是图片撑开即可*/
/* background-color: #b4ff62; 参考色也不用写了*/
}
.content{ /*设置内容的对其方式宽度*/
width: 1200px;
/*min-height: 100%;!*应该可以不写*!*/
margin: auto;
}
.container{
width: 1200px;
margin: auto;/*设置三大列居中*/
/*overflow: hidden;*/
}
.wrap{
float: left;
width: 100%; /*不写的话左侧会和中间有个间隙*/
/*宽度与父区块相同,独占整行,这很重要,可确保后面的浮动元素换行显示*/
}
.main{
margin: 0 230px 0 200px; /*最后一步,很重要*/
/*设置左右外边距为left和right的宽度,使他们显示到正确位置*/
}
.left{
width: 200px;
float: left;/*设置浮动后,使中左右三列成一行*/
margin-left: -100%;/* 讲left 拉回到main的左侧*/
}
.right{
width: 230px;
float: left;
margin-left: -230px;
}
.box{/*固定定位--扫描领红包*/
position: fixed;
right: 0;
bottom: 300px;
}
</style>
</head>
<body>
<div class="header">
<div class="content"><img src="0817/images/header.png" alt="header"></div>
</div>
<div class="container">
<div class="wrap">
<div class="main"><img src="0817/images/main.png" alt=""></div>
</div>
<div class="left"><img src="0817/images/left.png" alt=""></div>
<div class="right"><img src="0817/images/right.png" alt=""></div>
</div>
<div class="footer">
<div class="content"><img src="0817/images/footer.png" alt=""></div>
</div>
<div class="box">
<img src="0817/images/dingwei.png" alt="扫描领红包"><!-- 用来固定定位的-->
</div>
</body>
</html>点击 "运行实例" 按钮查看在线实例
本地运行效果:

总结:
1.先创建基本结构布局:上下各一个div 中间3列,3个div,由于上下添加样式元素,外面再套2个div,
而中间3列需要一个大容器container(div),中间主题部分也需要1个施加样式的父级元素,共创建9个有父子关系的div布局
2.对各个div,容器,元素设置样式
3.调整float,margin等属性
4:margin: 0 230px 0 200px; /*最后一步,很重要*/
作业2:图文混排
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>图文混排</title>
<style>
.box{
width: 768px;
background-color: bisque;
border-radius: 5%;
padding: 10px;
margin: auto;
}
.box img{
float: right;
border-radius: 50%;
}
.box h3 {
text-align: center;
margin-bottom: 80px;
}
.box p{
text-indent: 2rem;/*缩进2个字符*/
line-height: 1.5rem;
}
.box span{
font-size: larger;
font-weight: bolder;
}
</style>
</head>
<body>
<div class="box">
<h3>浅浅的秋,淡淡的愁</h3>
<img src="0817/images/qiu.jpg" alt="秋配图">
<p>
<span>我</span>,向来不喜欢秋。但,秋,还是悄悄地来了。<br>
晚上,搬一把椅子,独坐在走廊,本想好好地把秋天的天空看穿,感受人们口中秋天晚上天空的幽远。但,除了黑黑的云,还有在云间漫无目的闲逛的月亮,
我找不到一丝美的影子,更找不到一丝随风泻下的温暖!呆呆地,呆呆地,我的心开始又有点微颤。虽然特别喜欢学校环境的幽静和自由,
喜欢母女俩在一起无拘无束的世界,但是仍然从心底里是那么期盼家中灯火的温暖!<br>
风吹来。有点凉。<br>
我知道是秋在舞蹈。她在诉说她的幸福,她在诉说她的快乐,可,现实却告诉我,秋,不喜欢大冷大暖的秋其实内心并不幸福,
并不快乐,她眉眼间跟我一样也藏着无尽的忧愁……因为,冬天要来了。<br>
又起风了。<br>
风吹过了我的发梢。长发随风飘扬。<br>
我知道,这一刻我在想你!<br>
我知道,这一刻我在盼你!<br>
可,冬天真的要来了吗?冬天真的会很冷吗?冬天真的会比秋天更萧瑟吗?冬天过后真的——会是春天吗?<br>
浅浅的秋,淡淡的愁啊……
</p>
</div>
</body>
</html>点击 "运行实例" 按钮查看在线实例
本地运行图:

作业3:圣杯布局:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>圣杯之战</title>
<style>
.header,.footer{
width: 100%;
height: auto;
}
.content{
width: 1300px;
margin: auto;
}
.container{
width: 700px;/*设置宽度有什么好处??*/
margin: auto;
padding:0 400px 0 200px; /* 最后调整的语句*/
overflow: hidden;
}
.container .main{
width:100%;
float: left;
}
.container .left{
width: 200px;
float: left;
margin-left: -100%;
position: relative;
left: -200px;
}
.container .right{
width: 400px;
float: left;
margin-left: -400px;
position: relative;
right:-300px;
}
</style>
</head>
<body>
<div class="header">
<div class="content"><img src="0817/images/jdheader.png" alt="京东导航条"></div>
</div>
<div class="container">
<div class="main"><img src="0817/images/jdmain.png" alt="中间gun动部分"></div><!--这里去掉了main的父级元素 wrap 与双飞翼比较-->
<div class="left"><img src="0817/images/jdleft.png" alt="左侧导航栏"></div>
<div class="right"><img src="0817/images/jdright.png" alt="右侧展示区域"></div>
</div>
<div class="footer">
<div class="content"><img src="0817/images/jdfooter.png" alt="底部关于京东"></div>
</div>
</body>
</html>点击 "运行实例" 按钮查看在线实例
本地运行效果图:

总结:
双飞翼和圣杯布局的异同:
二者都是解决三栏布局优先渲染中间主题部分的典型,在代码实现部分,前几步都一样:
在解决浮动上都用了margin负边距的:margin-left:-100%
主要不同是:在浮动之后,主题部分被左右栏掩盖的处理方式上:
双飞翼的解决方式:在主题上套个壳,让这个壳的margin左右边距处理左右栏的问题:
margin-left:left-widthpx; margin-right:right-widthpx;
圣杯的解决方式:让主体main的左右内边距padding缩小出来一个左右栏的宽度,处理左右栏的问题
然后,通过相对定位position:relative left:-left-widthpx;
position:relative right:-right-widthpx;
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号