前端负margin 技术

负margin 技术

  • 负margin技术只对块元素和行内块元素有效果,行内元素设margin无效。

margin-top 和 margin-left: 当为正时,是 相对自己原来位置 移动自己的 该正向 边距

  • 当为负值时,是 相对自己原来的位置进行盒子提升,像css层叠覆盖一样,并会对该盒子的上一个盒子进行遮住的效果。
    • margin-top:将自己(该元素盒子)向上提升;
    • margin-left:将自己(该元素盒子)向左提升,

margin-bottom 和 margin-right: 当为正值时,是 相对自己原来位置 移动自己的 该正向 边距

  • 当为负值时,是 相对自己原来的位置,对 该元素的下一个盒子 进行盒子提升,
    • margin-bottom:对该元素的下一个盒子进行向上提升,并会对该盒子进行遮住的效果;a
    • margin-right:对该元素的下一个盒子进行向左提升,并会对该盒子进行遮住的效果。

负margin技巧

图片与文字对齐
当图片与文字排在一起的时候,在该父类盒子内,他们的水平方向上往往都是不对齐的,总是有偏差,这是由于图片与文字默认是 基线对齐( vertical-align:baseline ),大概是上下相距3px,所以使用 margin( 0 3px -3px 0)常解决图片与文字底部水平对齐。解决有以下方式:
  • 在img标签上添加 margin( 0 3px -3px 0 );
  • vertical-align:text-top;
  • vertical-align:text-bottom;
  • vertical-align:middle;
    • 注意:这里不要给文字标签添加这个样式,不然没有效果。
自适应两列对齐
自适应两列,就是只有两列水平对齐的情况下,一个是宽度自定义,就是使用 %,(如 100%);
        还有列就是固定宽度,在这种特殊的情况下,浮动 float 往往失效,任由它发展就 会破坏 浮动布局规则;
        浮动一般适用于定宽的元素
    在自动宽度标签上使用margin的负值,然后在自动宽度标签的子元素上设置margin负值 + 想要距离宽度,这样,布局才会是我们想要的效果。
    <style> 
        .wraper,.aside{
            height:40px;
            float: left;
            color:black;
        }
        .wraper{
            width:100%;
            background-color: grey;
            margin-left:-120px;
        }
        .aside{
            width:120px;
            background-color: burlywood;
         
        }
        .wraper p{
            margin-left: 130px;
        }
    </style>
</head>
<body>
<div class="wraper"><p>我是主体部分,meta name="viewport" content="width=device-width, initial-scale=1.0"不能隐藏</p></div>
    <div class="aside"><p>我是ce体部分,不能隐藏</p></div>
    
    <div style="clear:both"></div>
</body>

- 注意:一个简洁介绍,WordPress经典的两栏自适应布局就是使用这种方法来实现的。
元素垂直对齐
这里讲述一个常用的万能方法,使用position 和 margin 来使 标签居中,效果对块元素、行内块元素、行内元素都起效果。
  • 在父元素上添加 position: relative; 防止子元素跑到外宇宙去
  • 在子元素上添加 position: absolute; top: 50%; left: 50%;
  • 在子元素上添加 margin-top:- 子元素高度的一半; margin-left: - 子元素宽度的一半;
    • 很容易理解,就是 选择 父元素盒子的正中心,将它给需要定位的子元素。
tab选项卡

在tab选项卡中,由于会用到很多的js代码,所以这里等着后期进行修改。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值