Estoy luchando con este problema desde hace bastante tiempo. El problema se puede ver en dispositivos móviles (Android e iOS), algunos dispositivos pueden necesitar un poco de acercamiento. En la PC, también puedo reproducir este error en el navegador Chrome cuando cambio al modo móvil. A continuación se muestra el código que se utiliza para reproducir el error:
<!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>
El resultado esperado sería un div que se cumple con el color # 553213. Sin embargo, en algunos dispositivos móviles, muestran líneas adicionales (o espacios) entre esos tres divs.
Om my iPhone
En mi PC, uso del navegador Chrome con modo móvil
¿Alguien sabe lo que está pasando aquí? Cualquier idea sobre cómo sucede y cómo solucionarlo sería muy apreciada.
Respuestas:
Encontré esta respuesta.
Así que la solución es añadir una
margin-top: -1px;
atop
,middle
ybottom
clases.Y también se ve bien en dispositivos móviles y PC. La
div
altura de s no cambia. Se queda300px
.fuente
Supongo que esto se debe a la escala de la página. Intenta agregar esta metaetiqueta a la cabeza:
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;">
fuente
Después de leer los comentarios, he visto que Madison Courto tenía una sugerencia de
que se confirmó para resolver el problema real, pero ha causado problemas en otras partes de la página. Entonces, apliquemos esta idea solo para los divs reales:
fuente
Tratar con
background
. Esto funciona bien en mi móvil:No sé cuál es la causa real. pero cuando probé a continuación, el color de las líneas blancas se convirtió en negro y luego tuve esta idea:
haga clic en div superior o inferior
fuente
La razón para este problema podría ser debido a la forma
display
block
,inline-block
estilos siendo manejados por diferentes navegadores en diferentes pantallas.por ejemplo, los
inline-block
elementos tendrán un pequeño espacio automático a la derecha. La gente suele resolver esto usando negativomargin-left
.Por defecto, a
div
es unblock
elemento de nivel.Este espacio inferior al que te enfrentas también podría deberse a la forma en que se manejan los elementos de nivel de bloque.
Como resolver el
inline-block
espacio con negativomargin-left
,este
block
espacio de nivel puede resolverse usandomargin-top
odiv
el estilo a cualquieratable
,table-cell
escriba oflexbox
escriba usando cssfuente
fuente
agregue un pequeño esquema para ocultar este problema:
fuente
Solo intente agregar el margen inferior a los divisores superior y medio.
Espero que esto ayude.
fuente
Use la pantalla y el margen inferior para arreglar el estilo.
fuente
Use la pantalla y el margen inferior para arreglar el estilo.
fuente