css中子元素根据父元素设置百分比高度的问题。

之前用css的flex设置了一系列a标签,在a标签中准备再嵌套几个div,使a标签的样式更好看一点。先给大家看看之前我写的代码。

<style>
.bottom_menu
{
display:-webkit-box;
display:-moz-box;
height:14%;
width:100%;
border:1px solid black;
}
.bottom_menu_a
{
-moz-box-flex:1.0;
-webkit-box-flex:1.0;
border:1px solid black;
}
.bottom_pic
{
width:100%;
height:70%;
}
</style>
<body>
    <div class="bottom_menu">
        <a href="#" class="bottom_menu_a">
            <div class="bottom_pic">
            </div>
        </a>
    </div>
<body>
但是运行出来的效果就是.bottom_pic的高度设置没有效果,宽度是有效果的。

原因就是:子元素的百分比高度是根据父元素的高度来确定的,当父元素的高度为不确定值时,或者说父元素的高度未定义时,子元素的高度百分比将没有用(没有参照物)。所以只要设置了父元素的高度,子元素的高度百分比才会有用。


所以说上述代码中,只要把.bottom_pic的父元素的高度定义了就可以了。

所以只需要在.bottom_menu_a的css样式中加上一句:

height:100%;

这样就可以了。也就是我们所说的定义父元素的高度。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值