¿Es necesario mostrar un vacío?

Me gustaría mostrar un div que tenga un color de fondo con el alto y el ancho establecidos en 100% pero sin contenido. ¿Es posible hacer eso sin poner un & nbsp; ¿dentro?

Editar: Gracias a Mark Biek por señalar que div vacío con estilos de ancho y alto muestra cómo me esperaba. Mi div está en una celda de tabla, donde no se muestra.

Header

Esto parece funcionar en Firefox, Safari, IE6 e IE7.

      

3 Ejemplo de navegador

Hmmm … No estoy seguro de qué dicen exactamente las especificaciones, pero sé que, si bien los elementos en línea vacíos (por ejemplo, span) son válidos, los elementos de bloque vacíos (por ejemplo, p o div) se “limpian” con html-tidy .

Por lo tanto, diría que es más seguro apegarse al & nbsp; ya que no hace daño en tu caso. También agregaría un comentario como “” o algo así. Entonces, todos los que vayan a cambiar su html saben que el div tiene un significado especial aunque esté vacío.

En mi humilde opinión, debe incluir el nbsp para los DIV vacíos si quiere que se conviertan en algo.

En una nota “teórica” ​​… el navegador no debe mostrar nada si no hay contenido. El punto entero de nbsp es indicar el espacio vacío. Esto es sentido común y (creo) el estándar.

En un aspecto práctico … ¿tienes tres opciones? Una es dejar nbsp apagado, sabiendo que obtendrás resultados impredecibles. Este es probablemente el más fácil de codificar. Otra es incluir siempre nbsp, ya sea poniendo siempre nbsp al final de div o probando vacíos y agregando nbsp si está vacío. El tercero es probar el navegador e insertar nbsp cuando sea necesario.

Creo que depende del navegador (motor IE / Gecko / motor Webkit) y del modo (modo Estándares, modo Quirks). Tuve algunos divs que aparecen en el modo FFox / Standards y que no aparecen en IE6 / 7.

Probablemente puedas hacerlo cruzando el navegador con solo CSS, pero probablemente recurrirás a algunos ataques css.

Por experiencia, IE no renderizará bordes de elementos vacíos (al menos elementos

vacíos)

quizás

#foo {empty-cells: show;}

aunque eso puede ser solo para

Debe incluir   en todo momento.