2012-04-26 20 views
5

Necesito agrupar casillas de verificación juntas pero en 2 columnas. En la imagen de abajo he creado 2 conjuntos de campo diferentes. Sé que esto no es muy semántico, pero muestra el diseño que quiero lograr.jQuery casillas de verificación móviles agrupadas en 2 columnas verticales?

enter image description here

¿Hay una manera estándar de jQuery Mobile para hacer esto?

Quiero que las casillas de verificación parezcan pertenecer a una sección. Podría quitar el corder redondeado de arriba a la izquierda verde, abajo a la izquierda rosa y abajo a la derecha azul. ¿Necesito usar anulaciones de CSS estándar para esto o hay una manera más elegante? Gracias

+0

¿Está preguntando cómo obtener dos columnas? ¿O simplemente cómo eliminar las esquinas redondeadas en el lado interior de las columnas? ¿O ambos? – Todd

Respuesta

4

Creo que quiere mirar Layout Grids: http://jquerymobile.com/test/docs/content/content-grids.html

<div class="ui-grid-a"> 
    <div class="ui-block-a"> 
      <label><input type="checkbox" name="checkbox-1" /> Any</label> 
      <label><input type="checkbox" name="checkbox-1" /> Red </label> 
     </div> 
    <div class="ui-block-b"> 
      <label><input type="checkbox" name="checkbox-1" /> Green </label> 
      <label><input type="checkbox" name="checkbox-1" /> Black </label> 
     </div> 
</div><!-- /grid-a --> 

ACTUALIZACIÓN

Basado en su comentario, no, no puede haber dos columnas separadas agrupadas en uno fieldset.

El data-role="controlgroup" en un conjunto de campos elimina los márgenes y el relleno para dar el efecto agrupado, pero lo que usted termina con es algo como esto: http://jsfiddle.net/shanabus/qNYPh/1/

Sin embargo, si estás bien con uno de los padres fieldset y dos anidada, agrupados, fieldsets ... entonces usted puede terminar con una solución como esta: http://jsfiddle.net/shanabus/hcyfK/1/

+0

Puedo utilizarlos para crear columnas, pero quiero trabajar con un solo conjunto de campos y botones de opción para poder utilizar el estilo en la imagen de mi pregunta. No parece que las cuadrículas de diseño pueden hacer esto. Gracias – Evans

+0

echa un vistazo a mi respuesta actualizada, el último enlace jsfiddle proporciona una solución de trabajo, creo. – shanabus

+0

Esto era justo lo que necesitaba. ¡Gracias! +1 en – Deses

1

shanabus dio una buena respuesta con su solución agrupados anidado: http://jsfiddle.net/shanabus/hcyfK/1/

que puede tomar que un paso fu Además, establezca/sobreescriba los valores de 'radio de borde' css apropiados a cero para cualquier esquina que necesite para deshacerse de las esquinas redondeadas y lograr una apariencia más uniforme.

De acuerdo con el ejemplo:

<label for="radio-choice-1" style="border-top-right-radius: 0">Cat</label> 
<label for="radio-choice-2" style="border-bottom-right-radius: 0">Dog</label> 
<label for="radio-choice-3" style="border-top-left-radius: 0">Hamster</label> 
<label for="radio-choice-4" style="border-bottom-left-radius: 0">Lizard</label> 

sí, soy una mala persona, porque no lo hice html css separada & pero es un ejemplo. :-)

Cuestiones relacionadas