関数 - scss




CSS calc()関数のSass変数 (3)

Sassスタイルシートでcalc()関数を使用しようとしていますが、いくつか問題があります。 ここに私のコードです:

$body_padding: 50px

body
    padding-top: $body_padding
    height: calc(100% - $body_padding)

私がbody_padding変数の代わりにリテラル50pxを使用すると、私は欲しいものを正確に取得します。 しかし、変数に切り替えると、次のようになります。

body {
    padding-top: 50px;
    height: calc(100% - $body_padding); }

calc関数内の変数を置き換える必要があることをSassに認識させるにはどうすればよいですか?


heightプロパティのcalc()中で$variablesを使用するに$variables

Html

<div></div>

Scss

$a: 4em;

div {
  height: calc(#{$a} + 7px);
  background: #e53b2c;
}

ここでは、SASS / SCSSと数式のスタイルを使用した、本当にシンプルなソリューションです:

/* frame circle */
.container {
    position: relative;
    border-radius: 50%;
    background-color: white;
    overflow: hidden;
    width: 400px;
    height: 400px; }

/* circle sectors */
.menu-frame-sector {
    position: absolute;
    width: 50%;
    height: 50%;
    z-index: 10000;
    transform-origin: 100% 100%;
  }

$sector_count: 8;
$sector_width: 360deg / $sector_count;

.sec0 {
    transform: rotate(0 * $sector_width) skew($sector_width);
    background-color: red; }
.sec1 {
    transform: rotate(1 * $sector_width) skew($sector_width);
    background-color: blue; }
.sec2 {
    transform: rotate(2 * $sector_width) skew($sector_width);
    background-color: red; }
.sec3 {
    transform: rotate(3 * $sector_width) skew($sector_width);
    background-color: blue; }
.sec4 {
    transform: rotate(4 * $sector_width) skew($sector_width);
    background-color: red; }
.sec5 {
    transform: rotate(5 * $sector_width) skew($sector_width);
    background-color: blue; }
.sec6 {
    transform: rotate(6 * $sector_width) skew($sector_width);
    background-color: red; }
.sec7 {
    transform: rotate(7 * $sector_width) skew($sector_width);
    background-color: blue; }

結論として、 transform-originrotate()skew()を理解transform-originことを強くお勧めします。

https://tympanus.net/codrops/2013/08/09/building-a-circular-navigation-with-css-transforms/


補間:

body
    height: calc(100% - #{$body_padding})

この場合、 border-boxでも十分です。

body
    box-sizing: border-box
    height: 100%
    padding-top: $body_padding






css-calc