El Unicode me funcionó muy bien en jsfiddle, pero cuando intenté copiarlo / pegarlo en mi código, no se tradujo correctamente. Entonces, para aquellos con ese problema, la codificación HTML para el carácter de dibujo de cuadro unicode horizontal es & # 9472; fileformat.info/info/unicode/char/2500/index.htm y también hay una opción más pesada en & # 9473; fileformat.info/info/unicode/char/2501/index.htm
JeffG
1
en Mobile Firefox (y posiblemente en otros navegadores móviles), la disabledopción se muestra con un botón de opción deshabilitado a la derecha ...
GoTo
pero los grupos ópticos se representan de manera diferente en PC frente a dispositivos móviles, por lo que la opción deshabilitada sigue siendo la mejor solución.
Ir al
1
La codificación del archivo html también es vital para que los caracteres "─" aparezcan como una línea, en lugar de galimatías. UFT8 con BOM podría ser una buena opción.
En lugar de poner una etiqueta en los optgroups, intente agregar esto a su hoja de estilo: optgroup + optgroup {border-top: 1px solid black} Mucho menos cursi que un montón de guiones.
Laurence Gonsalves
2
Las etiquetas de Optgroup deberían describir el grupo. Si un navegador implementado según la captura de pantalla en la especificación HTML 4.01, el usuario se enfrentaría a filas de guiones y tendría que examinar cada una para descubrir qué había detrás.
Quentin
2
@Laurence: IE7 no admite estilos CSS en optgroup o elementos de opción. Por lo menos no las fronteras
Grom
2
<optgroup style = "border-top: 1px dotted #ccc; margin: 5px 0;"> </optgroup> - ¡se ve genial al menos en firefox!
Ben Sinclair
1
Un optgroup vacío como este no es html legal. Obtendrá errores de validación si lo usa. Prefiero la respuesta de james.garriss.
Ariel
22
Este es un hilo antiguo, pero como nadie publicó una respuesta similar, agregaré esto, ya que es mi forma preferida de separación.
Considero que usar guiones y demás es algo molesto, ya que podría estar por debajo del ancho del cuadro de selección. Por lo tanto, prefiero usar CSS para crear mis separadores ... un simple color de fondo.
<select><optionstyle="background-color:#cccccc;"disabledselected>Select An Option</option><option>First Option</option><option>Second</option><optionstyle="font-size:1pt;background-color:#000000;"disabled> </option><option>Third</option><option>Fourth</option><optionstyle="font-size:1pt;background-color:#000000;"disabled> </option><option>Fifth</option><option>Sixth</option></select>
Hola James, también me gusta esta solución, pero los lectores de pantalla leerán "deshabilitar opción guión guión guión guión ...", lo cual puede ser muy confuso para los usuarios discapacitados ... ¿Tienes una idea de cómo podríamos evitar esto? ¡gracias!
Julio
1
¿Es posible agregar una clase a elementos visuales que no desea que se hablen y luego agregar un comando ARIA que oculta / deshabilita la clase? Tal vez algo como una de las técnicas utilizadas aquí? asurkov.blogspot.com/2012/02/…
james.garriss
En realidad, @Julio, deberías publicar esto como una nueva pregunta. Tengo curiosidad por saberlo, pero nunca antes había programado para lectores de pantalla.
james.garriss
9
En lugar del hyphon normal, lo reemplacé usando un símbolo de barra horizontal del conjunto de caracteres extendido, no se verá muy bien si el usuario está en otro país que reemplaza ese carácter pero funciona bien para mí. Existe una gama de diferentes capítulos que puede usar para obtener algunos efectos excelentes y no hay CSS involucrados.
La respuesta podría mejorarse con un ejemplo de jsfiddle. Esta parece ser la solución más integrada que no se basa en efectos secundarios o hacks, pero sería bueno comparar imágenes de otras respuestas.
raider33
No funciona en muchos navegadores. (como de costumbre, las entradas son un dolor en el trasero)
Cuarenta
5
Estoy haciendo el comentario de @Laurence Gonsalves en una respuesta porque es la única que funciona semánticamente y no parece un truco.
Intente agregar esto a su hoja de estilo:
optgroup + optgroup { border-top:1px solid black }
Esta es realmente la forma correcta de hacerlo (lo más importante, no agrega contenido sin sentido). Me gusta optgroup { padding-bottom: 8px; } optgroup:not(:first-child) { padding-top: 8px; border-top: solid 1px #666; }
diseñarlo de
3
otra forma es usar una imagen de fondo css 1x1 en la opción que solo parece funcionar con firefox y tener un "----" respaldo
El espacio entre caracteres está determinado por la fuente y el motor de representación. Por ejemplo, veo espacios entre los guiones de em en Chrome (Windows) pero no en Safari (Mac).
Respuestas:
El enfoque de opción deshabilitada parece verse mejor y ser el mejor soportado. También he incluido un ejemplo de uso de optgroup.
optgroup (de esta manera apesta):
opción deshabilitada (un poco mejor):
Y si quieres ser realmente elegante, usa el carácter de dibujo de cuadro unicode horizontal.
(¡MEJOR OPCIÓN!)
http://jsfiddle.net/JFDgH/2/
fuente
disabled
opción se muestra con un botón de opción deshabilitado a la derecha ...Tratar:
fuente
Este es un hilo antiguo, pero como nadie publicó una respuesta similar, agregaré esto, ya que es mi forma preferida de separación.
Considero que usar guiones y demás es algo molesto, ya que podría estar por debajo del ancho del cuadro de selección. Por lo tanto, prefiero usar CSS para crear mis separadores ... un simple color de fondo.
fuente
Si no desea utilizar el elemento optgroup, coloque los guiones en un elemento de opción y dele el atributo deshabilitado. Será visible, pero atenuado.
fuente
En lugar del hyphon normal, lo reemplacé usando un símbolo de barra horizontal del conjunto de caracteres extendido, no se verá muy bien si el usuario está en otro país que reemplaza ese carácter pero funciona bien para mí. Existe una gama de diferentes capítulos que puede usar para obtener algunos efectos excelentes y no hay CSS involucrados.
fuente
Definir una clase en CSS:
Escribe en HTML:
fuente
Estoy haciendo el comentario de @Laurence Gonsalves en una respuesta porque es la única que funciona semánticamente y no parece un truco.
Intente agregar esto a su hoja de estilo:
Mucho menos cursi que un montón de guiones.
fuente
optgroup { padding-bottom: 8px; } optgroup:not(:first-child) { padding-top: 8px; border-top: solid 1px #666; }
otra forma es usar una imagen de fondo css 1x1 en la opción que solo parece funcionar con firefox y tener un "----" respaldo
http://jsfiddle.net/yNecQ/6/
o usar javascript (jquery) para:
http://tutorialzine.com/2010/11/better-select-jquery-css3/
vea también ¿Cómo agrego una línea horizontal en un control de selección html?
fuente
Si es solo WebKit, puede usarlo
<hr>
para crear un separador real.http://code.google.com/p/chromium/issues/detail?id=99534
fuente
Podrías usar el guión em "-". No tiene espacios visibles entre cada personaje.
(¡En algunas fuentes!)
En HTML:
O en XHTML:
fuente
Este es el mejor siempre.
fuente
Puedes hacer este también. es fácil y hace que la lista desplegable de selección de divisor.
fuente
Elegí alternar condicionalmente el color y el fondo. Al establecer un orden de clasificación y con vue.js, hice algo como esto:
fuente