Leider CSS zur Zeit nicht erlaubt tatsächlichen Abmessungen der Elemente in Berechnungen verwendet wird. Die calc()
function erlaubt nur Operationen mit bekannten Werten desselben Typs (z. B. Längen, die in Einheiten unterschiedlicher Länge ausgedrückt sind).
Um das Element mit konstanten Anteilen zu machen (wie Sie Ihren Code bedeutet) können Sie entweder:
- Verwenden Ansichtsfenster relativen Einheiten, z.B.
#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>
- Verwenden the padding hack (in diesem Fall werden Sie absolute Position für Ihren
div
Inhalt):
#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>
Was ist 'data.width'? css wird das nicht erkennen .. – choz
Siehe: https://developer.mozilla.org/en/docs/Web/CSS/calc –
Überprüfen Sie Geige: [Höhe ist Viertelbreite] (http://jsfiddle.net/444zzx7k/1 /) –