Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Почему не переопределяется стиль?

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
nkl
Отправлено: 09 Апреля, 2014 - 11:37:04
Post Id



Посетитель


Покинул форум
Сообщений всего: 305
Дата рег-ции: Янв. 2012  


Помог: 1 раз(а)




Есть такая разметка
CODE (html):
скопировать код в буфер обмена
  1.  
  2. ...
  3. <style>
  4. .global-rules a{border-bottom:1px solid green}
  5. .reset-text-decoration{border:medium none}
  6. </style>
  7. <div class="global-rules">
  8. <p>Bla-bla-bla <a href="#">link</a> bla-bla-bla.</p>
  9. <p>Bla-bla-bla <a href="#" class="reset-text-decoration"><img src="#"></a> bla-bla-bla.</p>
  10. </div>
  11. ...
  12.  


Почему .global-rules a переопределяет .reset-text-decoration? Ведь я задал класс непосредственно элементу и должно быть наоборот.

P.S.
Все стили в единственном отдельно подключенном файле лежат. .global-rules a как и в примере, стоит раньше .reset-text-decoration, но разве порядок следования на что-то влияет?
 
 Top
IllusionMH
Отправлено: 09 Апреля, 2014 - 11:58:31
Post Id



Активный участник


Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011  
Откуда: .kh.ua


Помог: 242 раз(а)




nkl, изучите "специфичность селекторов"
И порядок следования очень влияет если спецефичность одинаковая. поэтому они и Каскадные таблицы стилей

(Отредактировано автором: 09 Апреля, 2014 - 11:59:20)

 
 Top
VenZell
Отправлено: 09 Апреля, 2014 - 12:00:15
Post Id


Частый гость


Покинул форум
Сообщений всего: 237
Дата рег-ции: Июнь 2013  


Помог: 12 раз(а)




nkl, первый элемент ".global-rules a" точнее указывает на элемент, нежели чем ".reset-text-decoration", поэтому он имеет приоритет.

Решение:
a.reset-text-decoration или .global-rules .reset-text-decoration

Как в будущем посчитать "вес" селекторов, чтобы знать, какой из них будет иметь приоритет:
Базовые значения
#id - 100 пунктов
.class - 10 пунктов
element - 1 пункт

Посчитаем значения для вашего случая:
.global-rules a (10 + 1) = 11 пунктов.
.reset-text-decoration = 10 пунктов.
11 > 10 - вуаля, первое свойство имеет приоритет над первым.

(Отредактировано автором: 09 Апреля, 2014 - 12:00:50)

 
 Top
nkl
Отправлено: 09 Апреля, 2014 - 14:29:58
Post Id



Посетитель


Покинул форум
Сообщений всего: 305
Дата рег-ции: Янв. 2012  


Помог: 1 раз(а)




Спасибо большое за ответы. Я решил проблему увеличив цепочку селектора до .global-rules .reset-text-decoration, как собственно и посоветовал VenZell, которому отдельное спасибо за правило.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« HTML, Дизайн & CSS »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB