Css3 calc函数:mod运算符的问题

时间:2014-09-07 10:20:18

标签: html css css3 calc

我正在使用: width:calc(100%mod 320);
但它总是返回父元素的整个宽度。 似乎没有什么是错误的语法,它看起来像一个支持问题。 在chrome 37和firefox 32.0上测试过。 这是fiddle

<div class="mod">test2</div><!-- it should be 100px -->
.mod{
    width:calc(300px mod 200);
}

2 个答案:

答案 0 :(得分:2)

1)看起来只有IE支持mod运算符,它确实可以正常运行。

2)您需要在模数的单位上添加px(如提到的C-link)

3)正如@Harry所提到的,the current spec已经从calc函数中删除了mod运算符

FIDDLE - (在Internet Explorer上试用)

样本标记 -

<div class="container">
    <div class="no">no calc</div>
    <div class="simple">simple</div>
    <div class="mod1">mod1</div>
    <div class="mod2">mod2</div>
    <div class="mod3">mod3</div>
    <div class="mod4">mod4</div>
</div>

CSS(测试用例)

.container {
    width: 450px;
    border: 1px solid black;
}
.no {
   background:aqua; 
}
.simple {
    width:calc(100% - 100px);
    background:green;
}
.mod1 {
    width:calc(100% mod 200px); /* = 450 % 200 = 50px */
    background:red;
}
.mod2 {
    width:calc(100% mod 300px); /* = 450 % 300 = 150px */
    background:brown;
}
.mod3 {
    width:calc(100% mod 50px); /* = 450 % 50 = 0 */
    background:orange;
}
.mod4 {
    width:calc(50% mod 100px); /* = 225 % 100 = 25px */
    background:yellow;
}

答案 1 :(得分:-2)

25%mod 2(25%的剩余部分除以2)

有用的链接,了解如何使用此功能。 How-to use the Calc Function in CSS3

<强> CSS

.mod{
    width: calc(300px - ((300px / 200) * 200));
    background:red;
}

DEMO