Bài 12: Vòng lặp while trong SASS
Vòng lặp for dùng để lặp cho những trường hợp ta biết trước tổng số vòng lặp, điều này trong vòng lặp while cũng đúng. Tuy nhiên với vòng lặp while ta có thể không cần biết trước tổng số lần lặp vẫn được miễn là có điều kiện dừng vòng lặp để tránh tình trạng lặp vô hạn.

1. Vòng lặp while trong SASS
Vòng lặp while cũng ít khi sử dụng trong SASS vì thực sự CSS cũng không cần phải lặp nhiều, chủ yếu quản lý và tối ưu selector là ok rồi.
Cú pháp vòng lặp while như sau:
Bài viết này được đăng tại [free tuts .net]
@while condition
{
// do something
}
Trong đó condition là một biểu thức có kết quả là TRUE hoặc FALSE, nếu TRUE thì bước lặp sẽ được thực hiện và ngược lại nếu FALSE thì vòng lặp sẽ dừng.
Ví dụ: Lặp từ 1 tới 10
SCSS:
$index : 1;
@while $index <= 10
{
.col-xs-#{$index}{
background: red;
}
/*Tăng bước lặp lên, nếu không sẽ bị lặp vô hạn*/
$index : ($index + 1);
}
CSS sau khi biên dịch:
.col-xs-1 {
background: red; }
.col-xs-2 {
background: red; }
.col-xs-3 {
background: red; }
.col-xs-4 {
background: red; }
.col-xs-5 {
background: red; }
.col-xs-6 {
background: red; }
.col-xs-7 {
background: red; }
.col-xs-8 {
background: red; }
.col-xs-9 {
background: red; }
.col-xs-10 {
background: red; }
2. Một ví dụ về vòng lặp while trong SASS.
Giả sử có các lớp .col-xs-xx trong đó xx là các số từ 1 tới 10. Cần xây dựng CSS hiển thị background màu xanh cho những lớp CSS có xx chia hết cho 3 hoặc chia hết cho 5.
SCSS:
$index : 1;
@while $index <= 10
{
@if ($index % 3 == 0) or ($index % 5 == 0)
{
.col-xs-#{$index}{
background: blue;
}
}
$index : ($index + 1);
}
CSS sau khi biên dịch:
.col-xs-3 {
background: blue; }
.col-xs-5 {
background: blue; }
.col-xs-6 {
background: blue; }
.col-xs-9 {
background: blue; }
.col-xs-10 {
background: blue; }
3. Lời kết
Vậy là trong bài mình đã giới thiệu cú pháp và cách sử dụng vòng lặp while trong SASS, bạn hãy xem hai ví dụ mà mình đã làm và nhớ là hãy viết theo để chạy thử nhé. Bài tiếp theo chúng ta tìm hiểu vòng lặp each.

Các hàm xử lý chuỗi trong Javascript (cắt / tách / nối chuỗi ..)
Chia lấy phần dư / chia lấy phần nguyên trong javascript
Các cách khai báo biến trong Javascript
Các sự kiện (Event) trong Javascript
Hướng tạo thanh search bar bằng CSS
Hàm array.slice() trong Javascript
Tính tổng hai số bằng Javascript (cộng hai số)
Cách khai báo biến trong PHP, các loại biến thường gặp
Download và cài đặt Vertrigo Server
Thẻ li trong HTML
Thẻ article trong HTML5
Cấu trúc HTML5: Cách tạo template HTML5 đầu tiên
Cách dùng thẻ img trong HTML và các thuộc tính của img
Thẻ a trong HTML và các thuộc tính của thẻ a thường dùng