calc()
計算結果に幅を設定するために、cssで使用を開始しました。例えば:
<div id='parent'>
<div id='calcWidth'></div>
</div>
#parent{
width:100px;
}
#calcWidth{
width:calc(100% - 3px);
height:100px;
background:red;
}
どのように機能するかは知っていますが、上記の例calc()
の代わりに、css で何が返されるかを知りたいだけです。calc(100% - 3px);
私の混乱は何ですか?
上記の例では
width:calc(100% - 3px);
100%
幅は実際には100px
であり、これは実行時に CSS によって決定されます。したがって、計算された幅は
100px-3px=97px
97pxになり、それを%
97%
右に変換すると?
しかし、今、2つの可能性があります
97px
が返され、幅として設定されます。97%
が返され、幅として設定されます。
私の質問は:
どちらの場合も、幅は に設定されますが、OR
97px
の結果として何が返されますか?width:calc(100% - 3px);
97px
97%
このフィドルも見ることができます: http://jsfiddle.net/8yspnuuw/1/
編集:読んでください
友達に会いましょう: 簡単な例を見てみましょう:
<div class='parent'>
<div class='child'>
</div>
</div>
.parent{
width:200px;
}
.child{
width:20%
}
レンダリングすると、子の幅が 160 px になることがわかっています。わかった!しかし、それはcssで設定されているものではありませんよね? css は % で設定し、ピクセル単位でレンダリングされます。
同様に、calc を使用すると、返されるか、または返されます%
かpixel
または、私の質問を説明するために、BoltClocks の回答を読んでください。