File-file ini dihasilkan melalui KURANG.
Secara teori style-m.css harus memiliki lebih sedikit kode dan memiliki gaya hanya untuk perangkat seluler daripada style-l.css untuk memuat pada perangkat seluler lebih cepat.
Ini tidak sepenuhnya benar. The styles-m.css
berisi aturan CSS untuk kedua ponsel dan desktop dan dengan demikian umumnya lebih besar dari styles-l.css
yang berisi aturan untuk desktop. Namun, tujuannya masih sama, dengan cara ini, perangkat seluler tidak perlu mengunduh aturan CSS untuk perangkat desktop.
Mengenai pertanyaan tentang bagaimana gaya dapat "ditempatkan" di salah satu file tersebut, ini dilakukan melalui kueri media perpustakaan Magento UI yang membantu Magento membuat dua file ini dari aturan KURANG Anda.
Untuk memberi Anda contoh, blok media seperti yang berikut ini akan ditempatkan styles-m
karena desktop dan perangkat seluler memiliki aturan dalam blok ini "sama":
& when (@media-common = true) {
h1 {
font-size: 12px;
}
}
Blok permintaan media seperti ini adalah untuk perangkat yang memiliki resolusi minimal "screen_xs", yang merupakan perangkat seluler dengan resolusi layar 480px dan lebih besar, artinya tetap ditempatkan styles-m
tetapi tidak akan mempengaruhi semua perangkat seluler:
.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen__xs) {
h1 {
font-size: 18px;
}
}
Mengubah (@extremum = 'min')
ke (@extremum = 'max')
akan mengubah aturan ke kebalikannya dan dengan demikian hanya mempengaruhi perangkat dengan lebar lebih kecil dari 480px.
Dan blok seperti ini hanya akan menyangkut perangkat desktop dan dengan demikian ditempatkan di styles-l
, karena semuanya 'di atas' screen__m
dianggap sebagai perangkat desktop (secara default):
.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen__m) {
h1 {
font-size: 24px;
}
}
Anda dapat membaca lebih lanjut tentang break point ini di panduan pengembang Magento .
styles-l.css
danstyles-m.css
dalam tema kita?Menurut
default_head_blocks.xml
tata letak tema kosong:Dari apa yang saya pahami,
styles-l.css
hanya diterapkan untuk layar besar (di atas 768px) danstyles-m.css
diterapkan sepanjang waktu.Jadi itulah alasan mengapa
styles-m.css
memiliki lebih banyak kode karena berisi kode seluler serta kode yang berlaku apa pun lebar layarnya.styles-l.css
hanya berisi kode untuk layar yang lebih besar.sumber
Anda mendefinisikannya dengan fungsi kueri media dan lebih sedikit fungsi penjaga. Misalnya
& when (@media-common = true) { ... }
pergi ke styles-m.css karena gaya tersebut harus tersedia di mana-mana.Berbicara tentang pertanyaan media, ini berlaku untuk file desktop:
.media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen__m) {}
Anda mungkin ingin memeriksa Slide saya tentang cara menangani gaya di sini:
https://slidr.io/toh82/how-to-deal-with-styles-in-magento-2#1
sumber