SASS是建立在CSS之上的預(yù)處理器,用于更好地操作CSS代碼。它包含多個指令和規(guī)則,使編寫CSS代碼變得容易。它還包含一些非常有用的功能,如繼承、if/else語句、函數(shù)等。
在 SASS 中,我們可以將一個文件導(dǎo)入到另一個文件中,并將一個文件的內(nèi)容用于另一個文件。它還允許我們在多個類之間創(chuàng)建繼承。我們可以使用@extend指令將一個類繼承到另一個類。通過在CSS中使用繼承,我們可以提高代碼的可重用性。
在本教程中,我們將學(xué)習(xí)如何在SASS中從另一個文件繼承一個類。
語法
用戶可以按照下面的語法將一個類繼承到SASS中的另一個文件中。
@import "filename";
.element {
@extend .classname;
// other css
}
登錄后復(fù)制
我們在上面的語法中使用了@import規(guī)則來導(dǎo)入文件。之后,我們使用@extend指令用“classname”類擴(kuò)展“element”類。
示例1(基本類繼承)
在下面的示例中,我們演示了基本的類繼承。在這里,在card.scss文件中,我們添加了一個帶有一些CSS屬性的’card’類。我們可以說它包含了我們創(chuàng)建卡片所需的所有基本CSS屬性和值。
在style.scss文件中,我們使用了@import指令來導(dǎo)入card.scss文件。之后,我們對’card-div’和’card-container’類進(jìn)行了樣式設(shè)置。同時,我們使用了@extend規(guī)則,將’card-div’和’card-container’類繼承到’card’類中。
在輸出中,我們可以觀察到繼承類的結(jié)果。此外,用戶可以在下面的示例中觀察到代碼的可重用性。
文件名 – card.scss
.card {
background-color: aliceblue;
border: 1px solid #ccc;
border-radius: 5px;
padding: 10px;
margin: 10px;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}
登錄后復(fù)制
文件名 – style.scss
@import "card";
.card-container {
@extend .card;
width: 300px;
height: 300px;
}
.card-div {
@extend .card;
width: 200px;
height: 200px;
}
登錄后復(fù)制
輸出
.card,
.card-container,
.card-div {
background-color: aliceblue;
border: 1px solid #ccc;
border-radius: 5px;
padding: 10px;
margin: 10px;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}
.card-container {
width: 300px;
height: 300px;
}
.card-div {
width: 200px;
height: 200px;
}
登錄后復(fù)制
示例2(繼承多個類)
在下面的示例中,我們演示了多個類的繼承。我們在“specs.scss”文件中添加了包含 CSS 屬性的不同類。在 style.scss 文件中,我們導(dǎo)入了“specs.scss”文件。此外,我們使用 @extend 指令將“specs.scss”文件的所有 3 個類擴(kuò)展為“div”類。因此,我們從另一個文件繼承了多個類到一個類中。
文件名 – specs.scss
.margin {
margin-top: 10px;
margin-left: 10px;
}
.padding {
padding-top: 10px;
padding-left: 10px;
}
.size {
font-size: 20px;
}
登錄后復(fù)制
文件名 – style.scss
@import "specs";
.div {
@extend .margin;
@extend .padding;
@extend .size;
width: 300px;
height: 300px;
border: 2px dotted blue;
border-radius: 12px;
}
登錄后復(fù)制
輸出
.margin,
.div {
margin-top: 10px;
margin-left: 10px;
}
.padding,
.div {
padding-top: 10px;
padding-left: 10px;
}
.size,
.div {
font-size: 20px;
}
.div {
width: 300px;
height: 300px;
border: 2px dotted blue;
border-radius: 12px;
}
登錄后復(fù)制
示例 3(嵌套繼承)
在下面的示例中,我們演示了嵌套繼承。在 form.scss 文件中,我們創(chuàng)建了兩個不同的類并添加了 CSS 屬性。
在style.scss文件中,我們通過’form-field’類繼承了’form-group’類,并添加了’form-input’類。’input-field’類繼承了’form-input’類。所以,我們使用了嵌套繼承的類。
文件名 – form.scss
// form.scss
.form-field {
margin-bottom: 20px;
}
input-field {
border: 1px solid #cccccc;
padding: 5px;
}
登錄后復(fù)制
文件名 – style.scss
@import 'fonts';
.form-group {
@extend .form-field;
.form-input {
@extend .input-field;
}
}
登錄后復(fù)制
輸出
.form-field,
.form-group {
margin-bottom: 20px;
}
.input-field,
.form-group .form-input {
border: 1px solid #cccccc;
padding: 5px;
}
登錄后復(fù)制
用戶學(xué)會了在 SASS 中將類從一個文件繼承到另一個文件。用戶需要導(dǎo)入包含該類的文件,并使用@extend指令類名從一個類繼承另一個類。
以上就是將類繼承到 Sass 中的另一個文件的詳細(xì)內(nèi)容,更多請關(guān)注www.92cms.cn其它相關(guān)文章!






