我有一个计算定义:
#navigation-panel {
a, i.navEmptyBlock {
// ...
width: -webkit-calc(12% - 2px);
width: -moz-calc(12% - 2px);
width: -o-calc(12% - 2px);
width: -ms-calc(12% - 2px);
width: calc(12% - 2px);
@media (max-width: 640px) {
width: -webkit-calc(20% - 2px);
width: -moz-calc(20% - 2px);
width: -o-calc(20% - 2px);
width: -ms-calc(20% - 2px);
width: calc(20% - 2px);
}
// ...
}
}
当在640px处调整大小时,它应该应用新的计算,但它不会。
我已经使用Google开发者工具进行了检查,并且新的 DOES 适用但是由于任何奇怪的原因,它并没有覆盖旧版本。
开发者工具显示旧的划掉但是仍在应用它!。如果我禁用交叉的那个就行了。
尝试在Firefox中运行。
Chrome似乎没有覆盖-webkit-calc
次来电?
COMPASS生成的代码:
#navigation-panel a, #navigation-panel i.navEmptyBlock {
float: left;
margin: 0 auto;
text-decoration: none;
color: #080808;
text-shadow: 0 0 12px rgba(255, 255, 255, 0.6);
position: relative;
width: -webkit-calc(12% - 2px);
width: -moz-calc(12% - 2px);
width: -o-calc(12% - 2px);
width: -ms-calc(12% - 2px);
width: calc(12% - 2px);
font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif;
display: inline-block;
border: 1px solid #3284b6;
text-align: center;
padding-top: 6px;
height: 25px;
font-family: Tahoma;
font-size: 11px;
/* Windows */
background: rgba(255, 255, 255, 0);
-webkit-transition: background 80ms;
font-weight: 800;
box-shadow: inset 0px 0px 6px rgba(255, 255, 255, 0.9); }
@media (max-width: 640px) {
#navigation-panel a, #navigation-panel i.navEmptyBlock {
width: -webkit-calc(20% - 2px);
width: -moz-calc(20% - 2px);
width: -o-calc(20% - 2px);
width: -ms-calc(20% - 2px);
width: calc(20% - 2px); } }
编辑:普通宽度会覆盖第一个calc,但第二个cald会覆盖新的普通宽度,但不适用!
答案 0 :(得分:0)
将webkit的前缀放在重复的选择器中会以某种方式工作。
a, i.navEmptyBlock {
@media (max-width: 640px) {
// fallback
width: 18%;
width: -webkit-calc(20% - 2px);
}
@media (max-width: 565px) {
// fallback
width: 19%;
width: -webkit-calc(20% - 2px);
}
@media (max-width: 355px) {
// fallback
width: 15.5%;
width: -webkit-calc(20% - 2px);
}
}
a, i.navEmptyBlock {
float: left;
text-decoration: none;
color: $nav-panel-font-color;
text-shadow: 0 0 12px rgba(255, 255, 255, 0.6);
position: rela
略去; 宽度:12%;
width: -moz-calc(12% - 0.18em);
width: -o-calc(12% - 0.18em);
width: -ms-calc(12% - 0.18em);
width: calc(12% - 0.18em);
@media (max-width: 640px) {
// fallback
width: 19%;
width: -moz-calc(20% - 2px);
width: -o-calc(20% - 2px);
width: -ms-calc(20% - 2px);
width: calc(20% - 2px);
}
@media (max-width: 565px) {
width: -moz-calc(20% - 2px);
width: -o-calc(20% - 2px);
width: -ms-calc(20% - 2px);
width: calc(20% - 2px);
}
@media (max-width: 355px) {
width: -moz-calc(20% - 2px);
width: -o-calc(20% - 2px);
width: -ms-calc(20% - 2px);
width: calc(20% - 2px);
}