官方宣称最方便、有用的方法,但我觉得参数比较有用XD,可以把重复写的同样设定延伸到要套用的 class 上,而且只会将有用到的 extends 输出成 css,如果有些部分目前没有使用到,就不转换输出,这样可以有效减少 css 的行数,优化整体的呈现效果。
语法的话蛮简单的,要 extend 的部分前面加上 %[你的 extend 名称],要使用的时候再 @extend [你的 extend 名称]即可,跟 mixin 很像,只是不能带入参数,整体会比较简单明了~
// extend.sass
%fish-size
min-width: 20px
min-height: 10px
color: yellow
margin: 20px
font-style: italic
.normal-fish
@extend %fish-size
color: red
.fat-fish
@extend %fish-size
color: green
font-size: 120px
padding-right: 20px
.small-fish
@extend %fish-size
font-size: 10px
padding-left: 20px
这次的范例来用可爱的鱼示范,首先我们在 extend.sass 中新增 fish-size 这个即将要 extend 的项目,让所有的鱼有个基本的设定,像是颜色、大小、间距等等,之後我们再来分别新增不同的鱼种,像是肥鱼、小鱼,他们都延伸了 fish-size 的 extend,但是又有各自的个体设定。
// App.js
import "./App.css";
import "./assets/sass/extend.sass";
function App() {
return (
<div className="App">
<header className="App-header">
<div>
<div className="normal-fish">ζ°)))彡</div>
<div className="fat-fish">ζ°)))彡</div>
<div className="small-fish">ζ°)))彡</div>
<div className="small-fish">ζ°)))彡</div>
<div className="small-fish">ζ°)))彡</div>
<div className="normal-fish">ζ°)))彡</div>
<div className="small-fish">ζ°)))彡</div>
<div className="fat-fish">ζ°)))彡</div>
<div className="normal-fish">ζ°)))彡</div>
<div className="small-fish">ζ°)))彡</div>
</div>
</header>
</div>
);
}
export default App;
之後在 App.js 中引入档案,并且画上鱼鱼,然後套用不同鱼种的 class。
你就获得了一群,都有着斜斜的身体、相同的间距,但是颜色大小各自不同的鱼群!
除此之外,也欢迎大家走走逛逛关於我们团队夥伴的文章
juck30808 - Python - 数位行销分析与 Youtube API 教学
SiQing47 - 前端?後端?你早晚都要全端的,何不从现在开始?
<<: [Python 爬虫这样学,一定是大拇指拉!] DAY09 - TCP / UDP
>>: 追求JS小姊姊系列 Day9 -- 如果时间能重来,我不想跟工具人聊天(上)
首先 CentOS 7 做 mini install putty ssh 登入安装 LogAnaly...
前言 今天说好要来介绍 Navbar, 就是导览列,所以也是前端经常使用到的 Component。 ...
昨天我们讲解了如何 import 和 export 一个 modules,这时候你心中应该会有一个疑...
在前几天中有介绍了 Angular 中内建的一些 attribute directive,但是在实际...
再来就是我觉得难度较高的 CTF… 通常 CTF 的赛制因为范围较大,由於题型的机制范围较广,所以可...