とにかくcss値を数式として書くことができますか?例:
div{
height: 50% + 30px;
width: 40em - 5px;
}
もしあれば、それは完璧でしょう。
PS:JSやJQueryではやりたくないです。
これはcss3calc ()で実現できます。このように書いてください:
div{
width: 40%;
width: -webkit-calc(40% - 5px);
width: -moz-calc(40% - 5px);
width: calc(40% - 5px);
height:50%;
height: -webkit-calc(50% + 50px);
height: -moz-calc(50% + 50px);
height: calc(50% + 50px);
background: green;
color: white;
position:absolute;
}
これをチェックしてくださいhttp://jsfiddle.net/3QUw6/
詳細については、このディスカッションを確認してください。CSS3でdiv 50pxを100%未満にすることは可能ですか?
との両方padding
をmargin
使用して、オブジェクトの寸法を追加できます。ボックスモデルをお読みになることをお勧めします。
HTML:
<div id="container">
<div class="wrapper">
<div>...</div>
</div>
</div>
CSS:
.wrapper {
width: 40em;
height: 50%;
padding: 15px 0; /* Top and bottom padding of 15px */ }
/* Block-level element will take up 100% of the
container width, minus {margin_right} + {marign_left} */
.wrapper > div { margin: 0 0 0 5px; }
CSSのcalc()関数を見てください。うまくいけば、これに対するサポートはブラウザで増えるでしょう。