En un acordeón Bootstrap, en lugar de requerir un clic en el atexto, quiero hacer que se colapse al hacer clic en cualquier parte del panel-headingdiv.
Estoy usando Bootstrap 3. Entonces, en lugar de acordeón, es solo un panel plegable. ¿Alguna idea de cómo hacer clic en todo el panel?

Respuestas:
Todo lo que necesitas hacer es usar ...
data-toggle="collapse"data-target="#ElementToExpandOnClick"... en el elemento en el que desea hacer clic para activar el efecto de colapso / expansión.
El elemento con
data-toggle="collapse"será el elemento que activará el efecto. Eldata-targetatributo indica el elemento que se expandirá cuando se active el efecto.Opcionalmente, puede configurar
data-parentsi desea crear un efecto de acordeón en lugar de un colapso independiente, por ejemplo:data-parent="#accordion"También agregaría el siguiente CSS a los elementos con
data-toggle="collapse"si no son<a>etiquetas, por ejemplo:Aquí hay un jsfiddle con el html modificado de la documentación de Bootstrap 3 .
fuente
role="tab button"y el navegador interpretará el primero de la lista que entienda (muy probablementetab). Sin embargo, no estoy seguro de cuál de los dos es mejor. Trate de encontrar el significado de los rolestabybutton, y eso le daría la respuesta sobre cuál elegir.Otra forma es
<a>llenar completamente todo el espacio delpanel-heading. Use este estilo para hacerlo:Consulte esta demostración ( http://jsfiddle.net/KbQyx/ ).
Luego, cuando hace clic en el encabezado, en realidad está haciendo clic en el
<a>.fuente
He notado un par de fallas menores en el jsfiddle de Grim.
Para que el puntero cambie a una mano para todo el panel, use:
Eliminé la
<a>etiqueta (un problema de estilo) y seguídata-toggle="collapse" data-parent="#accordion" data-target="#collapse..."enpanel-headingtodo momento.He agregado un método CSS para mostrar chevron, usando
font-awesome.cssen mi jsfiddle:http://jsfiddle.net/weaversnap/7FqsX/1/
fuente
panel-headingapanel-heading collapsedpara arreglar los galones al revés.Aquí hay una solución para Bootstrap4. Solo necesita poner la
card-headerclase en laaetiqueta. Esta es una modificación de un ejemplo en W3Schools .fuente
La solución simple sería eliminar el relleno
.panel-headingy agregar a.panel-title a.Esta solución es similar a la anterior publicada por calfzhou , ligeramente diferente.
fuente
En realidad, mi panel tenía este ícono de flecha de estado de colapso e intenté otras respuestas en esta publicación, pero la posición del ícono cambió, así que aquí está la solución con el ícono de flecha de estado de colapso .
Agregue este CSS personalizado
El crédito va a este post respondedor.
La esperanza ayuda.
fuente
Aquí está el ejemplo de trabajo para Bootstrap 4.3
fuente