![CSSだけでテーブルの縦横2列を固定してスクロールできるようにする](https://cdn-ak-scissors.b.st-hatena.com/image/square/9f3af94dc5f5742a94eaaea266dcd199fdd57b90/height=288;version=1;width=512/https%3A%2F%2Fres.cloudinary.com%2Fzenn%2Fimage%2Fupload%2Fs--gwrjajXg--%2Fc_fit%252Cg_north_west%252Cl_text%3Anotosansjp-medium.otf_55%3ACSS%2525E3%252581%2525A0%2525E3%252581%252591%2525E3%252581%2525A7%2525E3%252583%252586%2525E3%252583%2525BC%2525E3%252583%252596%2525E3%252583%2525AB%2525E3%252581%2525AE%2525E7%2525B8%2525A6%2525E6%2525A8%2525AA%2525EF%2525BC%252592%2525E5%252588%252597%2525E3%252582%252592%2525E5%25259B%2525BA%2525E5%2525AE%25259A%2525E3%252581%252597%2525E3%252581%2525A6%2525E3%252582%2525B9%2525E3%252582%2525AF%2525E3%252583%2525AD%2525E3%252583%2525BC%2525E3%252583%2525AB%2525E3%252581%2525A7%2525E3%252581%25258D%2525E3%252582%25258B%2525E3%252582%252588%2525E3%252581%252586%2525E3%252581%2525AB%2525E3%252581%252599%2525E3%252582%25258B%252Cw_1010%252Cx_90%252Cy_100%2Fg_south_west%252Cl_text%3Anotosansjp-medium.otf_37%3AMORIYA%252520Hiroyuki%252Cx_203%252Cy_121%2Fg_south_west%252Ch_90%252Cl_fetch%3AaHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL3plbm4tdXNlci11cGxvYWQvYXZhdGFyL2U0Nzc0OTgwOTYuanBlZw%3D%3D%252Cr_max%252Cw_90%252Cx_87%252Cy_95%2Fv1627283836%2Fdefault%2Fog-base-w1200-v2.png)
親要素がdivなどのブロック要素の場合、何もしないと横幅がいっぱいになります。 下記は青背景が親要素、オレンジ背景が子要素です。後述する方法の比較のため兄弟要素にspanタグをいれています。 divの兄弟要素のspan <style> .example{ background: #77abd8; } .example>*{ background: #d3a142; } </style> <div class="example"> <a href="#">子要素(aタグ)</a> </div> <span>divの兄弟要素のspan</span> この親要素を子要素の幅に合わせましょう。
CSS テーブル(表)の見出し部分(一部)を固定してスクロールする方法 サイトで、表(テーブル)を使って表示したいことがあると思いますが、行の幅が横長になり、スペースに入り切らなかったり、縦の列も長くなりすぎて、デザイン上や見た目あまりよろしくないことがあるかと思います。 そこで、HTML の表(テーブル)が、「Excel のウィンドウ枠の固定」のように、見出し部分のセルだけ固定してスクロールできないものか調べてみた結果、CSSプロパティの「position: sticky;」を使用すれば、比較的簡単に実装できたので、ここに記載しておきます。 下記それぞれ4つのパターンのソースコードがありますが、本サイトで使用している「Wordpress + テーマ(Lightning)」では、一部の「CSS」が反映されないところがあるため、掲載している「HTML、CSS コード」は、一般的にHTMLサイ
行(横軸)を固定してスクロールする 縦にスクロールしてください。 上部の「見出し」だけ固定され、他の要素だけスクロールしていることが確認できます。 ↓ HTMLコード <table> <tr> <th class="fixed01">見出し</th> <th class="fixed01">見出し</th> <th class="fixed01">見出し</th> </tr> <tr> <td>テキスト</td> <td>テキスト</td> <td>テキスト</td> </tr> <tr> <td>テキスト</td> <td>テキスト</td> <td>テキスト</td> </tr> </table>
きっかけ td内部に設置したラジオボタンのクリックのしにくさに業を煮やして諦めかけてたところ解決したのでメモ 見えない壁 td内部に設置したラジオボタンのクリック範囲を広げるためにやったこと つまりは失敗例です labelで挟み込んでマージン無くして幅は100%高さも100%!! あれ? 幅はセル内いっぱいになったけど高さが何かに制限されている とクロームちゃんは教えてくれました その時のHTMLとCSS <!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8"> <link rel="stylesheet" href="test.css"> <title>jstest</title> </head> <body> <table> <tr> <th>ラジオ</th> <th>テキスト</th> </tr> <tr> <td>
要素型セレクタ(タイプセレクタ) …… 特定の要素にスタイルを適用する 全称セレクタ(ユニバーサルセレクタ) …… すべての要素にスタイルを適用する classセレクタ(クラスセレクタ) …… 特定のclass名がつけられた要素にスタイルを適用する idセレクタ …… 特定のid名がつけられた要素にスタイルを適用する :link擬似クラス …… 未訪問のリンクにスタイルを適用する :visited擬似クラス …… 訪問済のリンクにスタイルを適用する :hover擬似クラス …… カーソルが乗っている要素にスタイルを適用する :active擬似クラス …… クリック中の要素にスタイルを適用する :focus擬似クラス …… フォーカスされた要素にスタイルを適用する :lang擬似クラス …… 特定の言語を指定された要素にスタイルを適用する :first-child擬似クラス …… 最初に現れ
主に C#.NET と VB.NET の違いについて、メモを残していきます。 誤り等があれば、コメントから知らせていただけるとありがたいです。 ※載せているソースについて検証はしていますが、無保証です。 この記事のテーブルレイアウトで苦労したのでメモ。 例えば、列数 > 2 のテーブルの先頭 2 列を色指定したい場合、nth-child を使うと簡単にできる。 [CSS] /* td と th の先頭 2 列を指定 */ td:nth-child(-n+2), th:nth-child(-n+2) { background-color: purple; } しかし、先頭 2 列に colspan=2 が含まれる場合・・・ [HTML] <table> <tr> <td>1</td> <td>2</td> <td>3</td> </tr> <tr> <td colspan=2>1-2</td
ですが、同じCSSを使っていてもこんな感じでレイアウトが崩れてしまう場合があります。 (なぜか、中見出しが「100px」になっていない) 見出し これは最初にcolspanが出てきてしまうと、残念ながらこのように崩れてしまいます。 それでは、なぜcolspanで「table-layout:fixed」の効果がなくなってしまうのでしょうか。 これは、「table-layout:fixed」の仕組みが最初の<tr>行でレイアウトを決めて固定化してしまう仕組みになっているからなのです。 ですので、最初の行に「colspan=”3″」があると、その時点でcolspanでまとめられてしまった<td>列は、きれいに3等分されて「fixed(固定化)」してしまったのです。(最初の行移行では、「table-layout:fixed」の効果はない) この現象を防ぐには、どうすればいいのかというと最初に表示す
CSSの小技 その7 今回は「nth-child()で要素の指定」です。 今までのデモページで使用していましたが、nth-child()について もう少し掘り下げていきたいと思います。 用途 テーブルやナビゲーションや横並びなどで、何番目かの要素に特定の装飾をしたいときに、 今までですとclassを加えて装飾していましたが、nth-child()を使うことで便利に、かつ綺麗なソースで構築する事が出来ます。 実装方法 今回は前回使ったナビゲーションで説明します。 ナビゲーションの順番によって要素の色を変更し、1番左の要素の横幅を半分にします。 ひとつ目の要素はfirst-childで指定することも出来ます。 CSSは下の方に記述しています。 HTML <nav> <ul> <li><a href="#">HOME<span>ホーム</span></a></li> <li><a href="#
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く