当设置top和left方向的负边距时,元素本身向指定方向移动。当设置bottom做你的红颜好吗和right方向的负边距时,元素本身不移动,处于元素后方的元素向前流动,覆盖其上。
圣杯布局是一个三栏布局,左右定宽,中间自适应。
<header>header<保安辞职申请书/header> <div class="box"> <div class="main">main</div> <div class="left">left</div> <div class="right">right</div> </div> <footer>footer</footer>
得到如图所示的三个div。
下面就开始最这三个div进行操作。
首先要设置中间的div宽度为100%,让其能够自适应。左右的div设置固定宽度,并且让他们浮动起来,不然无法跟main出现在同一行。.main { width: 100%; float: left;}.left { width: 100px; float: left;}.right { width: 200px; float: left;}
这时我们得到如下图所示的内容,因为main占据了100%的宽度,left和right只能在main下面显示。
现在我们使用上面提到的负边距技巧,将left和right与main放在同一行。当left的margin-left
等于其本身宽度时,它将往上挪,如果设置为100%,那么就等于挪动到最开始的位置。所以我们将left的margin-left
设置为-100%,right的margin-left
设置为-200px,那么就可以将两者与main放到同一行。 .main { width: 100%; float: left;}.l对外扩张eft { width: 100px; float: left; margin-left: -100%;}.right { width: 200px; float: left; margin-left: -200px;}
得到结果如下图。
但是,我们发现main已经被left和right覆盖了一部分,这会对显示内容造成影响。圣杯布局采用的解决办法是,使用padding,将整体的显示区域缩小,留出left和right的空间。然后,再用相对定位,把left和right分别左移和右移。
使用padding将整体收缩。再将left和right移出去。.box { padding-left: 100px; padding-right: 200px;}
跟着用相对定位relative将left和right移出去。
.left { width: 100px; float: left; margin-left: -100%; position: relative; right: 100px;}.right { width: 200px; float: left; margin-left: -200px; position: relative; left: 200px;}
得到最终结果。
双飞翼布局是圣杯布局的一个改进,主要不同在于上面的第三步。首先用一个div将main的内容包裹,然后设置main内容div的左右边距为left和right的宽度。这样,也可以达到令main的内容显示区域避开left和right范围的作用。
html代码如下,用一个div包裹main的内容。
<div class="box"> <div class="main"> <div class="main-content">main</div> </div> <div class="left">left</div> <div class="right">right</div> </div>
css代码如下,不需设置padding,也不需要使用相扬州广陵学院对布局。
.box { /* padding-left: 100px; padding-right: 200px; */烤梨爷爷}.main { width: 100%; float: left;}.main-content { margin-left: 100px; margin-right: 200px;}.left { width: 100px; float: left; margin-left: -100%; /* position: relative; right: 100px; */}.right { width: 200px; float: left; margin-left: -200px; /* position: relative; left: 200px; */}
本文发布于:2023-04-07 06:20:12,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/1f601fbf288ed38f8a981da739a0f1b6.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:负边距与双飞翼布局.doc
本文 PDF 下载地址:负边距与双飞翼布局.pdf
留言与评论(共有 0 条评论) |