2013-11-12 2 views
1

Можно ли установить свойства в CSS, чтобы «здесь не определялось»?Установить свойство «не определено здесь» в CSS?

Представьте себе этот пример.

<div class="intro-text"> 
    This text should be big and have padding on all sides. 
</div> 
<div class="intro-text no-tb-padding"> 
    This text should also be big, but only have padding left & right. 
</div> 

.intro-text { 
    font-size: large; 
    padding: 1em 2em; 
} 
.no-tb-padding { 
    padding: [what here?]; 
    ... 

Теперь, вот что. Я хотел бы установить padding-top и padding-bottom в 0 для более позднего класса. Я знаю, что это можно сделать только с этими двумя правилами. Но есть ли способ в CSS определить это так?

padding: 0 [defined somewhere else]; 

При этом первый класс будет определять левый & правый отступы, но позже будет определять верхние & нижних.

Возможно ли это в CSS?

ответ

2

Цель стенографического объекта - дать вам указать все применимые значения в одной декларации. Поскольку вы пытаетесь установить не, чтобы установить определенные значения свойств, вы не должны использовать - и действительно вы не можете использовать - сокращенное свойство. Вам нужно будет установить свойства padding-top и padding-bottom отдельно.

+0

... и препроцессоры css, такие как переменные поддержки Less/sass, которые позволяют делать то, что вы планируете использовать. – Luca

3

Для такого рабочего процесса вам понравится SASS или LESS.

Для этого конкретного примера, просто установите набивку правая и левая обивку:

padding-right: 0; 
padding-left: 0; 
1

Я использую МЕНЬШЕ, что является основой CSS, и это очень полезно. ex. Вы можете использовать переменную и присваивать ей столько классов, сколько хотите, а затем все имеют одно и то же описание, которое определяется только в одном месте. Для использования в обычном CSS, вы можете просто добавить:

padding-right: 0; 
padding-left: 0; 

Поскольку верхняя и нижняя обивка будет принято в предыдущем классе. Надеюсь, что это поможет.

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