當我們使用CSS設計表格時,有時候我們會發現表格的行顏色不連續,這會使得整個表格的美觀度下降,影響用戶的使用體驗。
這種情況通常是因為我們在CSS樣式中設置了表格行的顏色,并且使用了偽類選擇器來設置奇偶行的顏色。但是在表格中可能存在被合并或跨行的單元格,導致不同的行無法正確地被區分開來。
table { border-collapse: collapse; } tr:nth-child(even) { background-color: #f2f2f2; }
為了解決這個問題,我們可以使用CSS3中的nth-of-type偽類選擇器而不是nth-child來選擇表格中的行。這個偽類選擇器選取的是同類型(type)元素中的第n個元素,而不是同級別(level)中的第n個元素。這樣,在表格中存在被合并或跨行的單元格也不會影響行的顏色了。
tr:nth-of-type(even) { background-color: #f2f2f2; }
除了使用nth-of-type偽類選擇器外,我們還可以使用JavaScript來動態計算行的顏色,在表格中存在被合并或跨行的單元格時也能達到理想的效果。
上一篇css表格的線的粗細
下一篇css插入音樂的代碼