2013-06-16 1 views
0

Я действительно запутался здесь со своей таблицей стилей. У меня много стилей ссылок на моем листе, и по какой-то причине случайным образом один из них будет переопределен чем-то другим, когда я просматриваю страницу с помощью инструментов Chrome Dev или Firebug. После того, как я возился с важными случаями и понимая, что они медленно делают мой код абсолютно ужасным, я удалил их все и пытаюсь выяснить, как организовать мой стиль ссылок, чтобы получить все правильные стили в нужных местах, переопределены.Специфичность Css - проблемы со стилем ссылки в стилях

В принципе у меня есть вот так:

.newlinks a { 
some styling} 

.dl a { 
some styling} 

.abclink a { 
some styling} 

И .newlinks является получение "некоторый стиль" от ".abclink а". Я действительно смущен, почему это происходит, если класс имеет определенное имя, а не просто как «p» или что-то еще. Любое объяснение было бы полезно! Спасибо!

редактировать: здесь порядок HTML

<div class="newlinks"><a href="#"></a></div> 
more of the page.. 
<div class="abclink"><a href="#"></a></div> 
<div class="dl"><a href="#"></a></div> 

Я мог бы разместить более длинный код, если нужно, я просто подумал, что это может быть общая проблема с моим порядком или формулировками или что-то.

editedit: здесь соответствующий CSS/HTML в jfiddle

http://jsfiddle.net/Ub6er/

, как вы можете видеть в jsfiddle, ссылка на "underrighttext" получает стиль от .dl :(

+1

Как выглядит ваш заинтересованный HTML, можете ли вы опубликовать это тоже ... – PSL

+0

Я обновил исходное сообщение, спасибо вам за помощь! Я могу загрузить jsfiddle всего кода, если это не просто общая проблема синтаксиса – shanling

+1

, это действительно не отменяет, но, возможно, вы, возможно, сделали что-то не так. покажите скрипку. –

ответ

3

причина underrighttext в настоящее время стиль как dl, потому что, как вы объявили ваш CSS для dl:

.dl a, a:active, a:visited { 
    ... 
} 

Этот селектор, который я скопировал с вашего JSFiddle, применим ко всем a в dl, но также к всемa:active и a:visited. Не только a:active внутри dl!

Вы должны исправить свои селекторы для активного и посещаемого государства должно быть так:

.dl a, .dl a:active, .dl a:visited { ... } 

Прямо сейчас, ваши активные и посещаемые ссылки просто быть стилизовано, что было последним стиль разобран браузером ,

Я обновил ваш jsfiddle с помощью правильных селекторов CSS. Он должен работать сейчас, как вы ожидаете.

+0

Это работает! Спасибо огромное! Я никогда не знал об этом. – shanling