css之"计算属性"

no,no,no,这和vue的计算属性没有一点关系,所以这次介绍的也和vue无关。

相信大家和我一样,在开发中,也遇到过这样的问题:

我设计样式,多用百分比布局,这样在不同分辨率就不会出现特别大的偏差,但是也不能避免不适用px等固定单位,所以当我们父元素分为2部分,头部使用了像素px,但是底部需要剩下所有的大小怎么办?弹性盒也确实能解决,但真的没有更好的方法了吗?

再比如说,当我一个元素需要位移,比如我需要居中,但是当父元素没有相对定位,它又不能定位居中,设置margin-left:50%也会出现本身宽度的一半的偏差,还得在偏回来,麻烦。

所以这里给大家介绍一个计算属性:

calc(百分比 - 像素)

示例一:

// 父元素
.box{
    width:100%;
    height:100;
}
// 子元素左边
.boxLeft{
    width:50px;
    height:100%;
}
// 子元素右边
.boxRight{
    width:calc(100% - 50px);
    height:100;
}

示例2:

// 需要居中的盒子
.box{
    width:500px;
    height:400px;
    margin-left:calc(50% - 250px);
    margin-top:calc(50% - 200px);
}

友情提示:注意加空格百分比和像素和减号之间

好了,以上就是简单的介绍,当然它的用途还不止于此,需要大家慢慢去了解。

计算属性一时爽,一直计算,一直爽。

image

如有问题,请指出,接受批评。

你可能感兴趣的:(css之"计算属性")