2014-12-05 64 views
0

我有一個CSS選擇器懷疑。究竟選擇這個CSS選擇器是什麼?爲什麼我有這種行爲?

進入我的CSS文件中的設置,我有以下代碼:

.table_legenda th, td { 
    text-align: left; 
    vertical-align: top; 
    font-weight: bold; 
    color: #76818a; 
    border-bottom: 1px solid #76818a; 
    border-left: 1px solid #76818a; 
    white-space: nowrap; 
    overflow: hidden; 
} 

究竟選擇?

我認爲它選擇所有日和內部 TD元素具有表類.table_legenda

的問題是,它是選擇對我來說也是另一個表內TD元素沒有設置類別.table_legenda(但設置了另一個類別)。

爲什麼?我錯過了什麼?

Tnx

+3

你需要使用這個選擇器:'.table_legenda th,.table_legenda td'。 – 2014-12-05 11:57:58

回答

4

您誤解了逗號的優先順序。

.table_legenda th, td {} 

等同於:

.table_legenda th {} 
td {} 

到:

.table_legenda th {} 
.table_legenda td {} 

您需要在每次你有一個逗號時指定完整的選擇:

.table_legenda th, 
.table_legenda td {} 

一個預處理工具如SASS可以給你的另一種寫法:

.table_legenda { 
    th, td {} 
} 
-1

它選擇tr inside table_legenda class,除了那,所有td

你想要的選擇是

.table_legenda th, .table_legenda td 

在這其中,它選擇所有的th inside .table_legenda和所有td inside .table_legenda

-2

的,意味着選擇另一個屬性,所以你應該做的是:

.table_legenda th,.table_legenda td { 
text-align: left; 
vertical-align: top; 
font-weight: bold; 
color: #76818a; 
border-bottom: 1px solid #76818a; 
border-left: 1px solid #76818a; 
white-space: nowrap; 
overflow: hidden; 
} 
相關問題