@alexandrnevajno1

Почему так странно работает max-wdith в медиа запросе css?

Здравствуйте! Помогите с медиазапросом, пожалуйста! Есть код...
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Стили</title>
<style type="text/css">
.h { color: red; }
@media only screen and (max-width: 500px) { .h { color: blue; } }
</style>
</head>
<body>
<H1 class="h">Hello, world!</H1>
</body>
</html>

Если max-width: 500, то запрос работает ВКЛЮЧИТЕЛЬНО (включает 500 - надпись синим цветом). Если 499, то НЕ ВКЛЮЧИТЕЛЬНО (на размере экрана 499 надпись красным цветом). Почему так?

P.S. как здесь выяснили, проблема заключается в неправильном округлении браузерами пикселей. И решение пока что видится только одно - использовать одно направление - либо max-width, либо min-width. Но если используется какой-либо фреймворк - типа Bootstrap, то придется выбирать именно min-width, ведь в Bootstrap'e сетка написана с использованием min-width.
Я начал начал так делать. И скажу вам, что в некоторых проектах верстка очень сильно усложняется! Может, есть JS код, который решает данную проблему?
  • Вопрос задан
  • 651 просмотр
Пригласить эксперта
Ответы на вопрос 3
DirecTwiX
@DirecTwiX
"display: flex;" уже предлагали?
Где пример кода на codepen?
На Chrome 58.0.3029.110 всё нормально, возьмите нормальный браузер.
Ответ написан
@Bondi
Привет. ты можешь нормально изложить свой вопрос, без паники?
Ответ написан
sfi0zy
@sfi0zy Куратор тега CSS
Creative frontend developer
Подобная фигня происходит из-за неправильных округлений (с браузерами такое бывает довольно часто, правда обычно проявляется в вещах вроде calc() в css). Вот тут есть статейка по теме media-запросов, и вывод из нее довольно простой - используйте или только max-width или только min-width и все будет хорошо.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы