2015-09-15 3 views
0

У меня возникла ситуация, когда я не могу понять CSS. У меня есть меню категории боковой панели, которое я хочу быть определенным шрифтом. Но другой контент, когда он находится на боковой панели, является стандартным шрифтом. Проблема в том, что структура div выглядит так. ...как заставить шрифт вниз по дереву css?

<div class="col-left sidebar"> 
    <div id"sidebar-nav" class"block sidebar-nav-left codnitiveSidenavLeft"> 
    <div class="block-title">..</div> 
     <div class="block-content"> 

Теперь то, что происходит в том, что блок-контент имеет значение шрифта в CSS, который является обычным шрифтом .. когда он не находится под классом «блок боковой панель-нав левый coditiveSidenameLeft» то, что отлично. Когда он находится под классом sidebar-nav-left coditiveSidenameLeft, тогда я хочу использовать специальный шрифт, называемый destroyregular .. вот что у меня есть в css.

.block .block-content { 
    padding: 5%; 
    font-family: 'Lato',sans-serif; 
    /*font-family: "destroyregular";*/ 
    font-size: 100%; 
    font: bold 12px Arial, sans-serif; 
    color: #FFFFFF; 
    text-transform: uppercase; 
} 


#sidebar-nav.block.sidebar-nav-left.codnitiveSidenavLeft 
{ 
    padding: 5%; 
    font-family: "destroyregular" !important; 
    font-size: 100%; 
    /*font: bold 12px Arial, sans-serif;*/ 
    color: #E6E6E6; 
    text-transform: uppercase; 
} 

В то время как класс контейнера «блок боковая панель-нав левый coditiveSidenameLeft» не имеет destroyregular шрифта, он переопределяется блок-контент .. как я могу заставить destroyregular шрифта вниз к блок-контенту, только если это под ним?

Заранее спасибо ..

--Corrected опечатка в DIV ... бок нав была исправлена ​​на врезке-нав извините .. --Corrected опечатка # 2 !! Arrgh .. # боковая панель-nav.block.sidebar-нав левый codnitiveSidenavLeft

Кен

ответ

0

Этот селектор:

#sidebar-nav.block.sidebar-nav-left.codnitiveSidenavLeft 

ли ничего не выбрать в этом HTML фрагмент кода вы вывесили. Идентификаторы и имена классов не совпадают.

UPDATE: с исправленным селектором то, что происходит сейчас, заключается в том, что шрифт destroyregular применяется с очень высокой специфичностью к блоку .block-content не наследует его по сравнению с чем-то определенным для .block-content jsut, потому что родитель имеет высокую специфичность. Так я бы сделал это, тот же HTML и добавил этот CSS:

#sidebar-nav.block.sidebar-nav-left.codnitiveSidenavLeft .block-content { 
    font-family: "destroyregular"; 
} 

Это не оптимально. Я думаю, что это слишком много. И, вероятно, вы можете избавиться от определения шрифта на другом (превышенном) селекторе и перенести его на него, но это зависит от того, что вам действительно нужно.

+0

Мой плохо .. это была опечатка .. это было исправлено .. – user1005246

+0

У вас еще есть имя класса, который отличается: 'coditiveSidenameLeft = codnitiveSidenavLeft ' – Victor

+0

Я не могу напечатать! # sidebar-nav.block.sidebar-nav-left codnitiveSidenavLeft Я исправил 2-ое опечатки .. все еще не работает, поскольку блок-контент переопределяет это! – user1005246

0

Изменение боковой панели и .block-контент к этому:

#side-nav 
    { 
     padding: 5%; 
     font-family: "destroyregular", Arial, sans-serif; 
     font-size: 12px; 
     font-weight: bold; 
     color: #E6E6E6; 
     text-transform: uppercase; 
    } 

    .block-content { 
     padding: 5%; 
     font-family: 'Lato', Arial, sans-serif; 
     font-size: 12px; 
     font-weight: bold; 
     color: #FFFFFF; 
     text-transform: uppercase; 
    } 
+0

Это не работает. Поскольку содержимое находится ниже боковой навигации и переопределяет side-nav ... как я уже сказал, только если содержимое находится под классом sidebar-nav-left.codnitiveSidenavLeft, я хочу использовать шрифт destroyregular .. блочное содержимое НЕ под этим классом, тогда я хочу использовать только шрифт Lato .. – user1005246

Смежные вопросы