Использование CSS запятой - PullRequest
0 голосов
/ 27 июля 2011

Ниже приведен код CSS.

.form-field {min-height: 20px; margin-bottom: 10px; padding-top: 4px; width: 80px;}
.form-field TEXTAREA, INPUT[type='text'] {position: absolute; left: 100px; top: 0px; height: 15px;}
.form-field TEXTAREA {height: 80px;}

Так что каждый раз, когда в div.form-field есть input или textarea, следует применять css.

Хотя в любом месте, только INPUT[type='text'] (даже за пределами .form-field), CSS применяется. Как мне помешать этому?

Ответы [ 3 ]

5 голосов
/ 27 июля 2011
.form-field TEXTAREA, .form-field INPUT[type='text']{
3 голосов
/ 27 июля 2011

Запятая разделяет весь селектор. Так .form-field TEXTAREA, INPUT[type='text'] выбирает .form-field TEXTAREA и INPUT[type='text'].

Возможно, вас заинтересует селектор :matches() . В настоящее время это доступно только в FireFox как селектор :-moz-any() . Это позволяет вам написать:

.form-field:-moz-any(TEXTAREA, INPUT[type='text'])

Однако безопаснее просто пойти с

.form-field TEXTAREA, .form-field INPUT[type='text']

В качестве примечания, имена тегов HTML должны быть строчными. Так что вы действительно должны использовать

.form-field textarea, .form-field input[type='text']
0 голосов
/ 27 июля 2011

К сожалению, вы хотели ИЛИ, игнорируйте это.

+ "Соответствует любому элементу F, непосредственно предшествующему элементу родного брата E."Источник: W3

.form-field TEXTAREA + INPUT[type='text'] {position: absolute; left: 100px; top: 0px; height: 15px;}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...