Rumah >hujung hadapan web >tutorial css >Bagaimana untuk Memanjangkan Pemilih dalam Pertanyaan Media Sass?

Bagaimana untuk Memanjangkan Pemilih dalam Pertanyaan Media Sass?

Barbara Streisand
Barbara Streisandasal
2024-10-29 19:54:29957semak imbas

How to Extend Selectors in Sass Media Queries?

Melanjutkan Pemilih dalam Pertanyaan Media dengan Sass

Soalan:

Seseorang ingin membenamkan . item dalam .item.compact apabila skrin mengecut, tetapi Sass melemparkan ralat apabila cuba melanjutkan menggunakan @media. Bagaimanakah seseorang boleh mencapai ini tanpa menghasilkan semula gaya?

Jawapan:

Malangnya, Sass melarang melanjutkan pemilih luar daripada dalam pertanyaan media. Sekatan itu memerlukan pendekatan alternatif:

1. Menggunakan Mixin:

Tentukan campuran boleh guna semula yang merangkumi gaya yang diingini. Kedua-dua dalam dan luar pertanyaan media, lanjutkan campuran ini:

@mixin compact {
    // Styles for compact items
}

%compact {
    @include compact;
}

// Usage
.item {
    @extend %compact;
}

@media (max-width: 600px) {
    .item {
        @include compact;
    }
}

2. Penambah Bersarang Dalam Pertanyaan Media:

Pendekatan ini membenarkan lanjutan pemilih yang ditakrifkan di luar pertanyaan media:

%foo {
  @media (min-width: 20em) {
    color: red;
  }
}

@media (min-width: 30em) {
  %bar {
    background: yellow;
  }
}

// Usage
.foo {
  @extend %foo;
}

.bar {
  @extend %bar;
}

3. Menunggu Kemas Kini Sass:

Perbincangan mengenai sekatan ini sedang berjalan. Melaksanakan penyelesaian mungkin memerlukan perubahan dalam sintaks atau fungsi Sass.

Atas ialah kandungan terperinci Bagaimana untuk Memanjangkan Pemilih dalam Pertanyaan Media Sass?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn