css3 margin-top:% 百分比以谁为标准的问题

<!DOCTYPE html>
<html>
<head>
    <title>定位</title>
    <style>
        *{
            margin:0px;
            padding:0px;

        }
       .container{
           width: 800px;
           height:600px;
           background-color: #cf0;
       }
       .container .c_header{

         background-color: #aaa; 
            height: 40px;
       }
       .container .c_body{
       
         writing-mode:vertical-lr;
        width:600px;
           height:400px;
           border:solid 1px #000;
       }
       .container .c_body .c_b_show{
           width:10px;
           height:10px;
           background-color: #000;
           margin-top:1%;
       }
    </style>
</head>
<body>
  <div class="container">
      <div class="c_header"></div>
      <div class="c_body">
           <div class="c_b_show"></div>
      </div>
  </div>/body>
</html>

        上面的例子,一个父级div (.container)包含两个子div(.c_header     .c_body)  。

在div(.c_body  )中包含了我们实验的子标签div class=' c_b_show', 

(操作一)我们为子div 设置margin-top: 1%; 然后 在控制台按住上下键的上键如图

可以看到margin-top:67%;时左侧子div (.c_b_show)已经到达父级标签的最下边了,看图片最右侧盒子模型margin 的值为402px,可以得出%百分比以父级div的Width宽度为标准的,父级的width 和 height 在 的<style> 标签中的.c_body 中可以看到,想要解决的方法我想到两个,如果有其他的方法可以在下面留言

一、在父级div中设置 writing-mode的值

writing-mode:vertical-lr;

然后执行上面的(操作一)如下图

改变其布局格式,让margin-top:%;的百分比以父级的height属性值为标准,此时在看右侧margin-top:100%; 盒模型的margin值为400px,

二、父级div   width 和 height

个人认为 把width  = height 设置相同的像素 也能够达到相同的效果,这样做有一个弊端,就是视图必须是正方形

注意:margin:值不管是百分比还是像素的形式,它的含义都是距离外边盒子的距离,找准它的依照标准,能够解决很多问题

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值