質問: 文字列が入っているtdを削除せず非表示にしたい aboutをクラスとする列(以下、about列)を非表示にしようと、次のような設定をしました。 th.about, td.about{ width:0px; border:0px; } : : | 右が1へのリンクになります | ウェブサイト1 | | --- | --- | || 右が2へのリンクになります | ウェブサイト2 | | : : aboutの長さ自体を0にするように設定したため、about列は表示されないはずなのですが、"右が1へのリンクになります"、"右が2への~"と表示されます。 プログラムの動作にかかわるので、about列を削除することなく、cssなどを設定することでabout列を非表示にしたいのですが、何か上手な方法はあるでしょうか。 よろしくお願いします。
回答: なんたらの表| ・・・ | ・・・ | | --- | --- | | ・・・・ | ・・・・ | ほげほげの表 | ・・・ | ・・・ | | --- | --- | | ・・・・ | ・・・・ | むにゃむにゃ | ・・・ | ・・・ | | --- | --- | | ・・・・ | ・・・・ | へんてこ | ・・・ | ・・・ | | --- | --- | | ・・・・ | ・・・・ | だとして、 table{ border-collapse:collapse; border:solid 1px gray; } td,th{border:dotted 1px gray;width:20em; } table[summary="なんたらの表"] td,table[summary="なんたらの表"] th{display:none;} table[summary="なんたらの表"] *+td,table[summary="なんたらの表"] *+th{display:table-cell;} table[summary="ほげほげの表"] td,table[summary="ほげほげの表"] th{visibility:hidden;} table[summary="ほげほげの表"] *+td,table[summary="ほげほげの表"] *+th{visibility:visible;} table[summary="むにゃむにゃの表"] td:first-child,table[summary="むにゃむにゃの表"] th:first-child{display:none;} table[summary="へんてこな"] td:first-child,table[summary="へんてこな表"] th:first-child{visibility:hidden;} 消滅させるならdisplay:none;→display:table-cell; 存在は残すけど表示させないならvisibility:hidden;→visibility:visibble; セレクタは適当に・・・ 隣接セレクタを使うなら + 第一列なら、擬似クラス:first