Sass - Estendi direttive
Descrizione
La direttiva @extend viene utilizzata per condividere regole e relazioni tra i selettori. Può estendere tutti gli altri stili di classe in una classe e può anche applicare i propri stili specifici. Di seguito sono riportati i tipi di estensione:
Tipi e descrizione | Sintassi | Codice compilato |
---|---|---|
Extending Complex Selectors Può estendere il selettore che consiste solo in un singolo elemento o selettore di classe. |
|
|
Multiple Extends Più di un selettore può essere esteso da un singolo selettore. |
|
|
Chaining Extends Il primo selettore esteso dal secondo selettore e il secondo selettore è esteso dal terzo selettore quindi questo è noto come concatenamento si estende. |
|
|
Selector Sequences Il selettore annidato può utilizzare @extend da solo. Merging Selector Sequences Unisce due sequenze, ovvero una sequenza estende un'altra sequenza che è presente in un'altra sequenza. |
|
|
@extend - Only Selectors Il suo carattere percentuale (%) può essere utilizzato ovunque un id o una classe, impedisce il rendering del proprio set di regole in CSS. |
|
|
The !optional Flag Il flag opzionale! Viene utilizzato per consentire a @extend di non creare alcun nuovo selettore. |
|
|
@extend in Directives Se @extend viene utilizzato all'interno di @media , può estendere solo i selettori presenti all'interno degli stessi blocchi direttiva. |
|
|
Esempio
L'esempio seguente mostra l'uso di @extend nel file SCSS:
estendere.htm
<!doctype html>
<head>
<title>Extend Example</title>
<link rel = "stylesheet" href = "extend.css" type = "text/css" />
</head>
<body class = "container">
<h2>Example using Extend</h2>
<p class = "style">Lorem Ipsum is simply dummy text of the printing and typesetting industry.</p>
</body>
</html>
Quindi, crea il file extent.scss .
estendere.scss
.style{
font-size: 30px;
font-style: italic;
}
h2{
color: #787878;
@extend .style
}
.container{
@extend h2
}
Puoi dire a SASS di guardare il file e aggiornare il CSS ogni volta che il file SASS cambia, utilizzando il seguente comando:
sass --watch C:\ruby\lib\sass\extend.scss:extend.css
Successivamente, esegui il comando precedente; creerà automaticamente il file extent.css con il seguente codice:
extended.css
.style, h2, .container {
font-size: 30px;
font-style: italic;
}
h2, .container {
color: #787878;
}
Produzione
Eseguiamo i seguenti passaggi per vedere come funziona il codice sopra indicato:
Salva il codice html sopra indicato in extend.html file.
Apri questo file HTML in un browser, viene visualizzato un output come mostrato di seguito.