CSSのcalc()を使うことで、幅や高さを計算式で指定できます。
+と-の前後には半角スペースが必須です。
*と/の前後には半角スペースは必須ではありませんが、入れておくほうが見やすいでしょう。
例えば、横幅100%マイナス30pxとしたい場合には、calc()を使って以下のように記述します。
【正】width: calc(100% - 30px); ※+と-の前後には半角スペースが必須 【誤】width: calc(100%-30px); ※半角スペースが無いのは誤り
p.sample1, p.sample2 {background-color: red;} p.sample1 {width: 100%;} p.sample2 {width: calc(100% - 30px);}
<html> <head> <link rel="stylesheet" href="sample.css" type="text/css"> </head> <body> <p class="sample1">width: 100%; を指定</p> <p class="sample2">width: calc(100% - 30px); を指定</p> </body> </html>
width: 100%; を指定
width: calc(100% – 30px); を指定
画面の横幅100%に対して高さをその1/5にしたい場合には、calc()を使って以下のように記述します。
【正】height: calc(100vw/5); ※*と/の前後には半角スペースは必須ではありません。 【正】height: calc(100vw / 5); ※半角スペースは必須ではありませんが、入れておくほうが見やすいでしょう。 【正】height: 20vw; ※この例の場合、calc()を使わず、このように記述しても同じ結果となります。
p.sample3, p.sample4 {background-color: orange;} p.sample3 {height: 100px;} p.sample4 {height: calc(100vw / 5);}
<html> <head> <link rel="stylesheet" href="sample.css" type="text/css"> </head> <body> <p class="sample3">height: 100px; を指定</p> <p class="sample4">height: calc(100vw / 5); を指定</p> </body> </html>
height: 100px; を指定
height: calc(100vw / 5); を指定