2013-08-27 18 views
6

zauważyłem w pliku CSS bootstrap:Powtarzające Pseudo-klasa Selektory

input:focus:invalid:focus, 
textarea:focus:invalid:focus, 
select:focus:invalid:focus { 
    border-color: #e9322d; 
    -webkit-box-shadow: 0 0 6px #f8b9b7; 
     -moz-box-shadow: 0 0 6px #f8b9b7; 
      box-shadow: 0 0 6px #f8b9b7; 
s} 

Wydaje się, że: nacisk zostanie określony dwukrotnie do wejścia, textarea i wybierz; czy ma to określoną funkcję?

Odpowiedz

6

Powoduje zwiększenie wartości specificity selektora CSS.

Oto odpowiedni cytat w css specyfikacji:

Uwaga: powtórzeń tego samego selektora prostego są dozwolone i zwiększają specyficzność.

Tak więc, w tym szczególnym przypadku, input:focus:invalid:focus będzie mieć pierwszeństwo przed input:focus:invalid.

Oto simpler example wykazując wzrost css specyfiki z powtarzających się wystąpień:

css

span.color.color { 
    color: green; 
} 

span.color { 
    color: yellow; 
} 

html

<span class="color">This will be green.</span> 
+0

W tym przypadku byłoby wejście: skupić: invalid kiedykolwiek zostanie zastosowany? Blok powyżej podanego przykładu to: 'input: focus: invalid, textarea: focus: invalid, select: focus: invalid { color: # b94a48; border-color: # ee5f5b; } ' – cardinal19821

+0

Nie chcę powiedzieć, że nigdy nie zostanie zastosowany, ponieważ, TBH, nie byłbym w stanie wyjaśnić użycia w Bootstrap, chyba że jest on przeznaczony do komentowania powyższego bloku, zachowując go w źródle ... Plus, jeśli się nie mylę, to z BS2.3.2, więc trudno byłoby zapytać dzisiaj, dlaczego to zostało dodane w tym czasie ... – edsioufi