我想使用calc
函數,但它太簡單了。爲什麼下面的`сss`構造無效?
#data {
background: #333333;
float: left;
width: 70%;
height: calc(data.width/4)px;
margin-top: 3%;
border-radius: 10px;
border: 0px solid #333333;
}
我想使用calc
函數,但它太簡單了。爲什麼下面的`сss`構造無效?
#data {
background: #333333;
float: left;
width: 70%;
height: calc(data.width/4)px;
margin-top: 3%;
border-radius: 10px;
border: 0px solid #333333;
}
我明白你想要的高度爲1/4的寬度。
這應該做你想要什麼:
#data{
background-color:blue;
width: 100%;
height: 25vw;
}
<div id="data"></div>
這隻有在元素處於頂層時纔有效。 – 2016-11-29 03:51:15
它不起作用,因爲data.width不可用,則可以使用,無論變量來實現你想要什麼。
#container {
width: 100%;
height: 100px;
}
#data{
--width: 70%;
background-color:blue;
width: var(--width);
height: calc(var(--width)/4);
}
<div id="container">
<div id="data"></div>
</div>
不幸的是,CSS目前不允許使用在計算元素的實際尺寸。 calc()
function僅允許具有相同類型的已知值的操作(例如以不同長度單位表示的長度)。
爲了與不斷的比例元素(如代碼暗示),您可以:
#data {
background: #333333;
float: left;
width: 70vw;
/* note the white spaces around "/" and no extra units */
height: calc(70vw/4);
/* or just height: 17.5vw; */
margin-top: 3%;
border-radius: 10px;
border: 0px solid #333333;
}
<div id="data"></div>
div
內容絕對位置):#data {
background: #333333;
float: left;
width: 70vw;
height: 0;
padding-top: calc(70vw/4);
margin-top: 3%;
border-radius: 10px;
border: 0px solid #333333;
position: relative;
}
<div id="data"></div>
什麼是'data.width'? css將不承認.. – choz
請參閱:https://developer.mozilla.org/en/docs/Web/CSS/calc –
檢查小提琴:[高度是季度寬度](http://jsfiddle.net/444zzx7k/1 /) –