[Day 16] Sass - Booleans

Hi 今天的主题是有写过任一种程序语言的人都会很熟悉的“条件判断式”,
下面会介绍 @if @else if @else

@if
if後方会加上需要判断的条件,判断结果为成立时,就会套用样式。

p {
  @if $device == desktop {
    font-size: 1.5rem;
  } 
  color: red;
  }
  
$device: mobile;

跑出来的css结果为

p {
   color: red;
   }

因为device为mobile,if後方的条件为不成立,
所以最後编译出的css并不会有font-size样式。

@else if
当if後方的条件不成立时,就会往下找@else if的条件,
依照@else if的排序一个一个往下找。
(如果都不成立,就会找@else,稍後会介绍)

p {
  @if $type == ocean {
    color: blue;
  } @else if $type == moon {
    color: white;
  } @else if $type == monster {
    color: green;
  } @else {
    color: black;
  }
}
$type: monster;

因为type为monster,if後方的条件为不成立,往下找else if,
直到找到符合的条件,所以最後编译出的css为color: green。

// 转成 CSS
p {
  color: green;
}

@else
当if後方的条件不成立时,就会往下找@else if的条件,
如果@else if还是都不成立,就会找@else。
(如果没有@else if也会直接找@else)
我们直接用上一个例子

p {
  @if $type == ocean {
    color: blue;
  } @else if $type == moon {
    color: white;
  } @else if $type == monster {
    color: green;
  } @else {
    color: black;
  }
}
$type: night;

因为type为night,if後方的条件为不成立,往下找else if也都不成立,
最後找@else,所以最後编译出的css为color: black。

// 转成 CSS
p {
  color: black;
}

<<:  day14: 模组化好的写法 -单一功能原则(2)

>>:  Day14-旧网站重写成Vue_5_多图片切换

Day12 - Button(二)

我们昨天讲到 按钮事件有分很多种 1.点击一下事件 2.长按事件 上一篇我们已经学会了按钮的点击一下...

网页变形-30天学会HTML+CSS,制作精美网站

transform属性是变形的意思,可运用在2D及3D变形,可以对网页元素做旋转、缩放、平移、倾斜、...

第 28 集:Bootstrap 客制化 component 元件样式

此篇会介绍如何修改 Bootstrap 元件样式。 事前准备 须先了解变数设置、通用类别设置,再继...

Day-18 任意举出三个你在开发 Rails 专案时常用到的 gem,并说明一下

又是专案题来了!基本上有做专案就会有很多对於专案的题型,大家要对专案熟一点比较好喔! 我们小组是作...

每日挑战,从Javascript面试题目了解一些你可能忽略的概念 - Day19

tags: ItIron2021 Javascript 前言 终於用了4天的时间把this相关的题型...