Apa perbedaan antara screen
dan only screen
dalam pertanyaan media?
<link media="screen and (max-device-width: 480px)" rel="stylesheet" href="m.css" />
<link media="only screen and (max-device-width: 480px)" rel="stylesheet" href="m.css" />
Mengapa kita harus menggunakan only screen
? Apakah screen
itu sendiri tidak memberikan informasi yang cukup untuk ditampilkan hanya untuk layar?
Saya telah melihat banyak situs web responsif menggunakan salah satu dari tiga cara berikut:
@media screen and (max-width:632px)
@media (max-width:632px)
@media only screen and (max-width:632px)
sumber
only
kata kunci akan menyembunyikan style sheet dari browser lama, lihat jawaban oleh @hybrid bawah. Dia menjelaskannya dengan sangat baik.media
atributlink
elemen.screen
seperti apa pun yang tercantum dalam jenis media lainnya.Berikut ini dari Adobe docs .
Spesifikasi kueri media juga menyediakan kata kunci
only
, yang dimaksudkan untuk menyembunyikan kueri media dari browser lama. Sepertinot
, kata kunci harus muncul di awal deklarasi. Sebagai contoh:Peramban yang tidak mengenali kueri media mengharapkan daftar jenis media yang dipisahkan koma, dan spesifikasinya mengatakan mereka harus memotong setiap nilai segera sebelum karakter nonalphanumeric pertama yang bukan tanda hubung. Jadi, browser lama harus menginterpretasikan contoh sebelumnya sebagai ini:
Karena tidak ada tipe media seperti itu saja, stylesheet diabaikan. Demikian pula, browser lama harus menafsirkan
sebagai
Dengan kata lain, itu harus menerapkan aturan gaya ke semua perangkat layar, meskipun tidak tahu apa artinya pertanyaan media.
Sayangnya, IE 6–8 gagal mengimplementasikan spesifikasi dengan benar.
Alih-alih menerapkan gaya ke semua perangkat layar, ia mengabaikan lembar gaya sama sekali.
Terlepas dari perilaku ini, masih disarankan untuk mengawali kueri media hanya jika Anda ingin menyembunyikan gaya dari browser lain yang kurang umum.
Jadi, gunakan
dan
akan memiliki efek yang sama di IE6-8: keduanya akan mencegah gaya tersebut tidak digunakan. Namun, mereka masih akan diunduh.
Juga, di browser yang mendukung kueri media CSS3, kedua versi akan memuat gaya jika lebar viewport lebih besar dari
401px
dan jenis media adalah layar.Saya tidak sepenuhnya yakin browser mana yang tidak mendukung kueri media CSS3 yang akan membutuhkan
only
versi tersebutsebagai lawan
untuk memastikan itu tidak ditafsirkan sebagai
Ini akan menjadi tes yang bagus untuk seseorang dengan akses ke lab perangkat.
sumber
Untuk memberi gaya pada banyak ponsel cerdas dengan layar yang lebih kecil, Anda dapat menulis:
Untuk memblokir browser lama agar tidak melihat lembar gaya ponsel iPhone atau Android, Anda dapat menulis:
Baca artikel ini untuk lebih banyak http://webdesign.about.com/od/css3/a/css3-media-queries.htm
sumber
only
kata kunci dalam konteks itu, kan?Jawaban oleh @hybrid cukup informatif, kecuali itu tidak menjelaskan tujuan sebagaimana disebutkan oleh @ashitaka "Bagaimana jika Anda menggunakan pendekatan Mobile First? Jadi, kami memiliki mobile CSS terlebih dahulu dan kemudian menggunakan min-width untuk menargetkan situs yang lebih besar. Kita seharusnya tidak menggunakan satu-satunya kata kunci dalam konteks itu, bukan?
Ingin menambahkan di sini bahwa tujuannya hanya untuk mencegah browser yang tidak mendukung untuk menggunakan gaya perangkat lain seolah-olah itu dimulai dari "layar" tanpa itu akan membawanya ke layar di mana seolah-olah dimulai dari "hanya" gaya akan diabaikan.
Menjawab ashitaka pertimbangkan contoh ini
Jika kita tidak menggunakan "hanya" itu masih akan berfungsi karena gaya desktop juga akan digunakan untuk menyerang gaya android tetapi dengan overhead yang tidak perlu. Dalam hal ini JIKA browser tidak mendukung itu akan mundur ke Style-sheet kedua mengabaikan yang pertama.
sumber
screen
di sini adalah untuk mengatur ukuran layar dari permintaan media. Misalnya lebar maksimum area tampilan adalah 480px. Jadi itu menentukan layar sebagai lawan dari jenis media lain yang tersedia.only screen
di sini digunakan untuk mencegah browser lama yang tidak mendukung permintaan media dengan fitur media dari menerapkan gaya yang ditentukan.sumber