#html #css #media-queries
Вопрос:
Я возился с редактором W3, изучая медиа-запросы. Я пытаюсь понять, почему фон всегда синий, за исключением нижней границы ширины. Насколько я понимаю, по крайней мере одна особенность всегда верна, поэтому после инвертирования она всегда должна быть желтой. Однако это не так, и он становится желтым только тогда, когда окно просмотра
Кто-нибудь знает, почему это так?
`<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style>
body {
background-color: yellow;
}
@media not screen and (max-width: 600px) , (min-width: 500px) {
body {
background-color: lightblue;
}
}
</style>
</head>
<body>
<h1>The @media Rule</h1>
<p>Resize the browser window. When the width of this document is 600 pixels or less, the background-color is "lightblue", otherwise it is "yellow".</p>
</body>
</html>
`
Ответ №1:
Поведение кажется правильным.
«Не экран» относится только к первому условию, частью которого он является, он не влияет на второе условие (минимальная ширина), поэтому максимальная ширина игнорируется, потому что мы находимся на экране, и минимальная ширина соблюдается.
Поэтому всякий раз, когда видовой экран заканчивается или равен ширине 500 пикселей, фон становится синим. Всякий раз, когда его меньше, он остается в исходном цвете, указанном выше, желтом.
Если вы хотите, чтобы оба условия в медиа-запросе игнорировались на экране, вам также нужно будет указать «не экран» как часть второго условия. потому что в списке условий они независимы друг от друга.
@media not screen and (max-width: 600px) , not screen (min-width: 500px) {
body {
background-color: lightblue;
}
}
Комментарии:
1. спасибо, что прояснили это, я думал, что » нет » применимо к обоим