1. ホーム
  2. Web制作
  3. CSS

[CSSチュートリアル]テーブル table :nth-child()を使って行間の色変更と整列を実現する。

2022-01-15 07:38:29

コアコード

Das Laden der JavaHL-Bibliothek ist fehlgeschlagen.
Die folgenden Fehler sind aufgetreten:
no libsvnjavahl-1 in java.library.path
kein svnjavahl-1 in java.library.path
kein svnjavahl in java.library.path
java.library.path = /Users/jason/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:.

レンダリング

上記の例では、スペーサーの色を設定しただけでは、間違った行を読むことはできませんが、同じ行のデータが紛らわしいことに変わりはありません。
そこで、cssの:nth-child()サブセレクターで異なるスタイルを追加することで、列によって異なる表示効果を設定することができます。

sudo port install subversion-javahlbindings +no_bdb +universal 

レンダリング

スタイルを追加することで、データを見やすくし、カテゴリーを区別したり、月を太字にしたり、支出は赤、収入は緑、などというようにすることができます。

cssによると、:nth-child(n)セレクタは、要素のタイプに関係なく、その親に属するN番目の子要素にマッチし、nは数字、キーワード、または数式にすることができる。
注意点としては、最初の子要素は 0 から始まるのではなく 1 であることです。 例えば、上記では月の最初の列のスタイルを設定し、 :nth-child パラメータを 1 としました。

sudo port -v selfupdate

また、定数oddとevenは、それぞれ奇数と偶数に対応させるために使用することができます。例えば、インターラインの背景色はこのように設定されます。

Last login: Wed Jun 18 08:57:38 on ttys000
jasondeabroadVPN:~ jason$ sudo port install subversion-javahlbindings +no_bdb +universal
Passwort:
Error: Port subversion-javahlbindings nicht gefunden
jasondeabroadVPN:~ jason$ xcode-select --install
xcode-select: Hinweis: Installation für Kommandozeilen-Entwicklerwerkzeuge erforderlich
jasondeabroadVPN:~ jason$ sudo port install subversion-javahlbindings +no_bdb +universal
Kennwort:
Error: Port subversion-javahlbindings nicht gefunden
jasondeabroadVPN:~ jason$ sudo port install subversion-javahlbindings
Kennwort:
Error: Port subversion-javahlbindings nicht gefunden
jasondeabroadVPN:~ jason$ sudo port -v selfupdate
---> Aktualisieren der MacPorts-Basisquellen mit rsync
Dateiliste empfangen ... erledigt
base.tar
 
gesendet 31264 bytes empfangen 233081 bytes 7890.90 bytes/sec
Gesamtgröße: 27002880 Beschleunigung: 102,15
Dateiliste empfangen ... erledigt
base.tar.rmd160
 
gesendet 64 Bytes empfangen 635 Bytes 155.33 Bytes/sec
Gesamtgröße ist 512 Beschleunigung ist 0.73
MacPorts base Version 2.3.0 installiert,
MacPorts-Basisversion 2.3.0 heruntergeladen.
---> Aktualisieren des Ports-Baums
Synchronisieren des lokalen Ports-Baums von rsync://rsync.macports.org/release/tarballs/ports.tar
Empfangen der Dateiliste ... fertig
ports.tar
 
gesendet 58 Bytes empfangen 12350890 Bytes 18393.07 Bytes/sec
Gesamtgröße: 61337600 Beschleunigung: 4,97
Dateiliste empfangen ... erledigt
ports.tar.rmd160
 
gesendet 58 Bytes empfangen 636 Bytes 277.60 Bytes/sec
Gesamtgröße: 512 Beschleunigung: 0,74
Empfangene Dateiliste ... fertig
AnschlussIndex
 
gesendet 58 Bytes empfangen 1496732 Bytes 176092.94 Bytes/sec
Gesamtgröße: 10641251 Beschleunigung: 7,11
Dateiliste empfangen ... fertig
PortIndex.rmd160
 
gesendet 58 Bytes empfangen 636 Bytes 277.60 Bytes/sec
Gesamtgröße ist 512 speedup ist 0.74
---MacPorts base ist bereits die neueste Version
 
Der Ports-Tree wurde aktualisiert. Um Ihre installierten Ports zu aktualisieren, sollten Sie Folgendes ausführen
  port upgrade outdated
jasondeabroadVPN:~ jason$ 
 

連続選択とオフセット選択のどちらかを実現するには、この式を使用します。(an+b)で期間の長さを表し、nはカウンタ(0から始まる)、bはオフセット値です。
以下の設定は、evenを使用するのと同じ効果があります。

tr:nth-child(2n){
            background: #eee;
        }


また、2n+1も奇数と同じ効果があります

tr:nth-child(odd){
            background: #eee;
        }


2n+1

tr:nth-child(2n+1){
            background: #eee;
        }


n+bを使うだけで、連続的な選択を表すことができます。

tr>td:nth-child(-n+5) {
            ...
        }


-n+bは最初から、n+bは最後から選択する高度な使い方の一つです。

1つ目:単純な数字の連番書き込み

:nth-child(番号)

number要素に直接マッチします。numberの引数は0以上の整数でなければならない。

<ブロッククオート

li:nth-child(3){background:orange;}/*3 番目の LI の背景をオレンジに設定*/

2つ目:乗算の書き方

:nth-child(an)です。

引数anのnを省略してはいけない場合は、3n, 5nのように倍数の書き方を示すもので、aの倍数の要素にすべてマッチする。

li:nth-child(3n){background:orange;}/*LI の 3, 6, 9, ...、3の倍数の背景を全てオレンジに設定*/。

3つ目:倍数グループ化マッチ

:nth-child(an+b) vs :nth-child(an-b)

要素はまずグループ化され、各グループにaがあり、bはグループのメンバーの番号です。nとプラス記号+は省略できず、位置が入れ替わらないのがこの文章の特徴で、a,bは正の整数か0です。例えば3n+1, 5n+1。しかしプラス記号はマイナス記号に変更でき、グループ内のa-b番目に一致させます。(実は、anの前にもマイナス記号を付けることができるのですが、それは次のセクションに譲ります)。

li:nth-child(3n+1){background:orange;}/*matches the 1st, 4th, 7th, ..., 1st LI in the group of 3**/
li:nth-child(3n+5){background:orange;}/*5 番目から始まる 3 個のグループのうち、5、8、11、...、1 番目の LI にマッチする**/。
li:nth-child(5n-1){background:orange;}/*5-1=4, 10-1=9, ..., 5の倍数から1を引いたLIにマッチします*/。
li:nth-child(3n±0){background:orange;}/* 等しく (3n)*/
li:nth-child(±0n+3){background:orange;}/* (3)と同等*/

タイプ4:逆多重グループ化マッチ

:nth-child(-an+b)です。

ここではネガティブとポジティブが1つずつ、どちらもデフォルトにできない、そうでなければ意味がない。これは最初のものにマッチするという点では :nth-child(an+1) と似ていますが、b 番目から逆算していくので、最大でも b 以上にはマッチしないという点が異なります。

li:nth-child(-3n+8){background:orange;}/*8, 5, 2番目のLIにマッチします*/。
li:nth-child(-1n+8){background:orange;}/*or(-n+8), 最初の8個(8個目を含む)のLIにマッチ、これはより実用的、最初のNマッチ正規使用を修飾するために使用 */。

第5のタイプ:パリティマッチング

:nth-child(odd) vs :nth-child(even)

それぞれ奇数、偶数の要素にマッチします。奇数(odd)は(2n+1)と同じ、偶数(even)は(2n+0)、(2n)と同じです。

筆者の見解です。すると、テーブルの奇数-偶数行定義様式は次のように書ける。

.table > tr:nth-child(even) > td {background-color。#ccc;}のようになります。(偶数行目)
.table > tr:nth-child( odd ) > td {background-color。#ccc;} (奇数列)

この記事は、テーブル table using :nth-child() to achieve color change and alignment in alternate rows is all about this, more related table nth-child content please search previous articles of script house or continue to browse following related articles, hope you will support the script house more in the future!