2011-08-31 12 views
11

Me gustaría crear un fondo que se asemeje a una hoja de cálculo de Excel. Células blancas de la tabla, bordes delgados alrededor de cada celda. Sé cómo hacer esto fácilmente con una sola imagen, y sé cómo hacerlo con tablas ... pero me gustaría hacer esto sin ninguna de las dos cosas, si es posible.¿Es posible crear un fondo tipo cuadrícula en CSS sin imágenes o tablas?

El tamaño de cada celda se fijará en 20x20, por lo que no tengo que preocuparme por el cambio de tamaño. ¿Alguna idea? En cierto modo, tenía una forma de cocinar que implicaba una tonelada de marcado interno, pero pensé que era casi tan malo como usar una mesa.

El propósito de este fondo permitirá a los usuarios organizar bloques en una cuadrícula. Usando la funcionalidad de arrastrar y soltar de jQuery UI, quiero que el usuario pueda mover bloques dentro de una cuadrícula confinada. Las líneas de la cuadrícula simplemente les mostrarían en qué parte de la cuadrícula están vinculados sus bloques. Un ejemplo de este ajuste de cuadrícula (sin líneas de cuadrícula) está disponible en http://jqueryui.com/demos/draggable/#snap-to

+4

Si esto es estrictamente para un fondo que debe utilizar una imagen .. si las células se mantienen los datos tabulares .. usted debe utilizar una tabla. – Loktar

+4

¿Cuál es el punto del fondo? ¿Vas a poner datos dentro de estas celdas? Se considera correcto usar tablas para datos tabulares. –

+1

Puedes hacerlo con un degradado CSS y múltiples fondos, pero el soporte del navegador no es sorprendente, una imagen es realmente tu mejor opción aquí. –

Respuesta

13

Use una imagen de fondo; no pierdas tu tiempo jugando con el marcado. No vas a conseguir nada más eficientes que esto:

background:url(data:image/gif;base64,R0lGODlhFAAUAIAAAMDAwP///yH5BAEAAAEALAAAAAAUABQAAAImhI+pwe3vAJxQ0hssnnq/7jVgmJGfGaGiyoyh68GbjNGXTeEcGxQAOw==); 

Example.

+0

Bueno, al menos para la depuración. ¡Gracias! – FelipeAls

+0

Eso se ve increíble, pero ¿cómo definir el tamaño cuadrado (con un parámetro) o incluso elegir otro color? ¡Gracias! –

+3

@RuiMarques: crea otra imagen. Hay [herramientas] (http://dopiaza.org/tools/datauri/) que generan URI de datos para usted. – josh3736

28

He buscado también por este problema y me encontré con un very good solution:

background-size: 40px 40px;  
background-image:repeating-linear-gradient(0deg, #fff, #fff 1px, transparent 1px, transparent 40px),repeating-linear-gradient(-90deg, #fff, #fff 1px, transparent 1px, transparent 40px); 

Para cambiar el tamaño de la cuadrícula, cambiar el fondo grande y la última opción px dentro del gradiente. Para cambiar el ancho de la cuadrícula, cambie la primera opción de px dentro del degradado. El primer degradado es horizontal, el segundo es para las líneas verticales.

para esta demo que reconoció que la opción CSS: se requería

position: absolute 

. Construiré mi grilla ahora y si obtengo más información, los agregaré dentro de un comentario.

Espero que esto ayude :)

+0

He buscado por esto tanto tiempo Gracias. – Diskilla

+0

saludo hombre! genialidad! – Suresh

Cuestiones relacionadas