Skip to main content

Sass: Placeholder Selectors

SASS supports placeholder selector using class or id selector. In normal CSS, these are specified with "#" or ".", but in SASS they are replaced with "%". To work with placeholder selector, they can be used with @extend directive. Without using @extend directive, you cannot display the result in CSS.

Example

Example of placeholder selectors in a SCSS file:

<html>
<head>
<title>Placeholder Selectors</title>
<link rel="stylesheet" type="text/css" href="style.css" />
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
</head>

<body>
<h1>First Heading</h1>
<p class="frst_para">First paragraph</p>
<h1>Second Heading</h1>
<p class="sec_para">Second paragraph</p>
</body>
</html>

and the style.scss file:

.frst_para {
color: green;
}
.sec_para {
@extend .frst_para;
font-size:20px;
}

Then you tell Sass to watch the file and update the CSS when the file changes:

sass --watch my\path\style.scss:style.css

The generated style.css files is as shown below:

.frst_para, .sec_para {
color: green;
}
.sec_para {
font-size: 20px;
}

Table of Contents