Я уже давно борюсь с этой проблемой. Эту проблему можно увидеть на мобильных устройствах (Android и iOS), некоторые устройства могут быть немного увеличены. На ПК я также могу воспроизвести эту ошибку в браузере Chrome при переключении в мобильный режим. Ниже приведен код, используемый для воспроизведения ошибки:
<!DOCTYPE html>
<html lang="en">
<head>
<style>
.top {
height: 100px;
background-color: #553213;
}
.middle {
height: 100px;
background-color: #553213;
}
.bottom {
height: 100px;
background-color: #553213;
}
</style>
</head>
<body>
<div style="width:300px; height: 300px">
<div class="top"></div>
<div class="middle"></div>
<div class="bottom"></div>
</div>
</body>
</html>
Ожидаемый результат будет div, который выполняется с цветом # 553213. Однако на некоторых мобильных устройствах они отображают дополнительные линии (или промежутки) между этими тремя элементами.
Ом мой айфон
На моем ПК, используя браузер Chrome с мобильным режимом
Кто-нибудь знает, что здесь происходит? Буду очень признателен за любые идеи о том, как это происходит и как это исправить.
Ответы:
Я нашел этот ответ.
Таким образом, решение добавить
margin-top: -1px;
кtop
,middle
иbottom
классы.И это выглядит хорошо на мобильных и ПК тоже. Высота
div
s не меняется. Осталось300px
.источник
Я думаю, это связано с масштабом страницы. Попробуйте добавить этот метатег к голове:
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;">
источник
Прочитав комментарии, я увидел, что у Мэдисон Курто было предложение
что было подтверждено для решения актуальной проблемы, но это вызвало проблемы в других частях страницы. Итак, давайте применим эту идею только к фактическим элементам div:
источник
Попробуй с
background
. Это прекрасно работает на моем мобильном телефоне:Я не знаю, какова действительная причина. но когда я попробовал ниже, то цвет белых линий, преобразованных в черный, я получил эту идею:
нажмите сверху или снизу div
источник
Причина этой проблемы может быть связана с тем , как
display
block
,inline-block
стили быть обработаны различными браузерами на разных экранах.например,
inline-block
элементы будут иметь небольшое пространство справа. люди обычно решают это, используя негативmargin-left
.По умолчанию a
div
являетсяblock
элементом уровня.Это нижнее пространство, с которым вы столкнулись, также может быть связано с тем, как обрабатываются элементы уровня блока.
Как решение
inline-block
пространства с отрицательнымmargin-left
,это
block
пространство уровня может быть решено с помощьюmargin-top
илиdiv
стиля «s либоtable
,table-cell
типа илиflexbox
типа с использованием CSSисточник
источник
Добавьте небольшую схему, чтобы скрыть эту проблему:
источник
Просто попробуйте добавить поле margin-bottom к верхним и средним элементам div.
Надеюсь это поможет.
источник
Используйте дисплей и поля снизу, чтобы исправить стиль.
источник
Используйте дисплей и поля снизу, чтобы исправить стиль.
источник