css负边距布局

负边距布局

.container {
overflow: hidden;
}
.wrap {
width: 100%; float: left;
}
.body {
background: red;
margin-left: 120px;
margin-right: 150px;
}
.left {
background: green;
margin-left:-100%;
float:left;
width: 120px;
}
.right {
background: yellow;
margin-left: -150px;
float: left;
width: 150px;
}

.container1 {
border: solid 1px red;
width: 200px;
height: 200px;
position:relative;
}
.block {
width: 100px;
height: 100px;
float: left;
background: yellow;
margin-left: -50px;
margin-top: -50px;
position: absolute;
top:50%;
left:50%;
}
.container2 {
overflow: hidden;
}
.item {
float: left;
width: 50px;
background: lime;
margin-right: 10px;
padding-bottom: 100px;
margin-bottom: -100px;
}

<!DOCTYPE html>
<html>
<head>
    <title>负边距布局</title>
    <meta charset="utf-8">
       <style type="text/css">
          .container { 
                      overflow: hidden; 
                   }
          .wrap  {   
                      width: 100%; float: left; 
                   }
          .body  {   
                      background: red;
                      margin-left: 120px;
                      margin-right: 150px;
                     }
          .left {   
                      background: green;
                      margin-left:-100%;
                      float:left;
                      width: 120px;
                     }
          .right {   
                       background: yellow;
                       margin-left: -150px;
                       float: left;
                       width: 150px;
                     }
        </style>
        <style type="text/css">
         .container1 {
                     border: solid 1px red; 
                     width: 200px; 
                     height: 200px; 
                     position:relative;
                   }
         .block  { 
                    width: 100px; 
                    height: 100px; 
                    float: left; 
                    background: yellow; 
                    margin-left: -50px; 
                    margin-top: -50px; 
                    position: absolute; 
                    top:50%;
                    left:50%;
                  }
         .container2 {
                      overflow: hidden;
                    
                    }       
         .item   {
                     float: left;
                     width: 50px;
                     background: lime;
                     margin-right: 10px;
                     padding-bottom: 100px;
                     margin-bottom: -100px;
                  }
        </style>
</head>
<body>      
       <hr>
      <p>三列布局:</p>
      <p>&nbsp;</p>
      <div class="container">
         <div class="wrap">
         <div class="body">center</div>
      </div>
         <div class="left">left</div>
         <div class="right">right</div>
      </div>
      <hr color="red" />
  <div>
        <p>绝对定位元素</p>
        <div class="container1">
        <div class="block"></div>
  </div>
     <p>&nbsp;</p>
     <hr/>
         <div class="container2">
            <p>等高布局</p>
            <div class="item">123</div>
            <div class="item">234<br/>345<br/>456<br/></div>
            <div class="item">467</div>
         </div>     
</body>
</html>



三列布局:

center

left

right


绝对定位元素


等高布局

123

234
345
456

467

时间: 2024-10-12 05:37:40

css负边距布局的相关文章

CSS 负边距读后感

最近看到一篇讲解CSS 负边距的文章: http://segmentfault.com/a/1190000003750411?utm_source=Weibo&utm_medium=shareLink&utm_campaign=socialShare 看后感觉如沐春风.以下是我的一点理解: 首先是原文中的结论: margin为正时,top.left属性是以content上(左)或垂直上方相连元素margin的下(右)边为参考线垂直向下(右)位移. margin为负时,right.botto

css负边距之详解(子绝父相)

来源 | http://segmentfault.com 原文 |  The Definitive Guide to Using Negative Margins   自从1998年CSS2作为推荐以来,表格的使用渐渐退去,成为历史.正因为此,从那以后CSS布局成为了优雅代码的代名词. 对于所有设计师使用过的CSS概念,负边距作为最少讨论到的定位方式要记上一功.这就像是在线纹身-每个人都会做,但是没有人会谈论它.(It’s like an online taboo—everyone’s doin

负边距布局

时间--2016-06-03知识点:margin的负值会让盒子的宽高都相应的变大.margin的负值会让出相应的位置.例如本文的案例中margin-right:-300px,这个盒子就会让出右边的宽度为300px的一个空间,后面的元素浮动的话就会占据他让出的空间. 本文只是个人理解,如有不妥敬请指正. 案例:<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8"

负边距在布局中的应用

根据前几天对css负边距的研究(<浅析css负边距>),在理解负边距的原理之后,可以用在以下情况当中(持续更新). 一.两列布局 1.右侧定宽,左侧宽度自适应 思路:要实现效果,首先,左侧的宽度要能够自适应,那么宽度可选100%或auto,我们知道设置成100%会使左侧div的宽度为父元素的100%,设置成auto会根据左侧div的实际大小自适应宽度,那如果div里面有块级元素,右侧就会被挤到下一行,所以我们选择100%:然后我们需要在左侧div的右边空出位置给右侧div,那么只要把左侧div

margin 负边距 的知识点

本文介绍了css负边距在普通文档流中的作用和效果.左和右的css负边距对元素宽度的影响.css负边距对浮动元素的影响.css负边距对绝对定位元素的影响.懒人建站偶然浏览到这篇文章,感觉非常好,于是分享到这里,跟大家一起学习. css负边距在普通文档流中的作用和效果 那些没有脱离文档流的元素(指不是浮动元素也不是绝对定位.固定定位的元素等),其在页面中的位置是跟随者文档流的变化而变化的.看下面这幅图: 负 边距对这些由文档流控制的元素的作用是,会使它们在文档流中的位置发生偏移,但这种偏移不同于相对

(转)CSS布局-负边距-margin

css中的负边距(negative margin)是布局中的一个常用技巧,只要运用得合理常常会有意想不到的效果.很多特殊的css布局方法都依赖于负边距,所以掌握它的用法对于前端的同学来说,那是必须的.本文非常基础,老鸟可以略过. 负边距在普通文档流中的作用和效果 那些没有脱离文档流的元素(指不是浮动元素也不是绝对定位.固定定位的元素等),其在页面中的位置是跟随者文档流的变化而变化的.看下面这幅图: 负边距对这些由文档流控制的元素的作用是,会使它们在文档流中的位置发生偏移,但这种偏移不同于相对定位

css margin负边距之列布局(列表、圣杯、双飞翼)

技术服务于应用,技术来源于应用. 应用1:当接到设计师给的设计图时(如下图),发现每列左右和上下文保持一致,顿时整个心情就不好了.因为要兼顾响应式,即没办法保证每个列表单元的具体位置,是列表中间还是边缘,边缘两个要保证(左或右)内外边距为零,无法获得理想布局,综合多次搜索,得到解决办法: *** 增加列表区域宽度,margin设为负值. 原理相信有css基础的道友都清楚(负边距不仅能影响元素在文档流的位置,还能增加元素的宽度),父元素向右增加宽度(margin负值)与列表元素右边距相等,因使用的

CSS布局奇淫巧计之-强大的负边距

css中的负边距(negative margin)是布局中的一个常用技巧,只要运用得合理常常会有意想不到的效果.很多特殊的css布局方法都依赖于负边距,所以掌握它的用法对于前端的同学来说,那是必须的.本文非常基础,老鸟可以略过. 负边距在普通文档流中的作用和效果 那些没有脱离文档流的元素(指不是浮动元素也不是绝对定位.固定定位的元素等),其在页面中的位置是跟随者文档流的变化而变化的.看下面这幅图: 负边距对这些由文档流控制的元素的作用是,会使它们在文档流中的位置发生偏移,但这种偏移不同于相对定位

CSS布局之-强大的负边距

css中的负边距(negative margin)是布局中的一个常用技巧,只要运用得合理常常会有意想不到的效果.很多特殊的css布局方法都依赖于负边距,所以掌握它的用法对于前端的同学来说,那是必须的.本文非常基础,老鸟可以略过. 负边距在普通文档流中的作用和效果-影响元素在文档流中的位置 那些没有脱离文档流的元素(指不是浮动元素也不是绝对定位.固定定位的元素等),其在页面中的位置是跟随者文档流的变化而变化的.看下面这幅图: 负边距对这些由文档流控制的元素的作用是,会使它们在文档流中的位置发生偏移