He creado una tabla en ASPX. Quiero ocultar una de las columnas según el requisito, pero no hay ningún atributo como visible
en la construcción de la tabla HTML. ¿Cómo puedo solucionar mi problema?
html
asp.net
html-table
user601367
fuente
fuente
td:first-child { display:none; }
Puede usar el
nth-child
selector de CSS para ocultar una columna completa:Esto funciona bajo el supuesto de que una celda de la columna N (ya sea una
th
otd
) es siempre el enésimo elemento hijo de su fila.Aquí tienes una demostración.
Si desea que el número de columna sea dinámico, puede hacerlo utilizando
querySelectorAll
o cualquier marco que presente una funcionalidad similar, comojQuery
aquí:Demostración con jQuery
(La solución jQuery también funciona en navegadores heredados que no son compatibles
nth-child
).fuente
también puedes usar:
La diferencia entre ellos es que "oculta" oculta la celda pero retiene el espacio pero con "colapso" el espacio no se mantiene como display: none. Esto es importante cuando se oculta una columna o fila completa.
fuente
visibility: collapse
está diseñado específicamente para manejar la visualización / ocultación de celdas, ya que hay una diferencia al recalcular el ancho / alto de la celda entre este ydisplay:none
. Ver developer.mozilla.org/en-US/docs/Web/CSS/visibility#ValuesLa respuesta de Kos es casi correcta, pero puede tener efectos secundarios dañinos. Esto es más correcto:
CSS (hojas de estilo en cascada) pondrá en cascada atributos a todos sus elementos secundarios. Esto significa que
*:nth-child(1)
ocultará el primerotd
de cadatr
Y ocultará el primer elemento de todos lostd
hijos. Si alguno de sustd
tiene cosas como botones, íconos, entradas o selecciones, el primero estará oculto (¡vaya!).Incluso si actualmente no tiene cosas que estarán ocultas, imagínese su frustración en el futuro si necesita agregar una. No castigue así a su yo futuro, ¡será un fastidio depurarlo!
Mi respuesta solo ocultará el primero
td
yth
todotr
para#myTable
mantener seguros sus otros elementos.fuente
La gente de Bootstrap usa la
.hidden
clase<td>
.fuente
También puede ocultar una columna usando el elemento col https://developer.mozilla.org/en/docs/Web/HTML/Element/col
Para ocultar la segunda columna en una tabla:
Problemas conocidos: esto no funcionará en Google Chrome. Vote por el error en https://bugs.chromium.org/p/chromium/issues/detail?id=174167
fuente
use .hideFullColumn en la tabla y .hidecol en th. No es necesario agregar la clase en td individualmente, ya que será un problema porque el índice puede no estar en la mente de cada td.
fuente
También puede hacer lo que vs dev sugiere programáticamente asignando el estilo con Javascript iterando a través de las columnas y configurando el elemento td en un índice específico para tener ese estilo.
fuente
fuente