изменить стиль CSS элемента с пробелом в имени класса - PullRequest
12 голосов
/ 14 января 2011

Я создаю tumblr их, и мне нужно написать внешний CSS-файл, но у меня возникают проблемы при редактировании стиля css элементов post.

Это его структура:

<li class="post quote">
    {other code}
</li>


Проблема в том, что в имени класса есть пробел.

Как бы я создал класс CSS для доступа к этому? И да, я знаю, что могу просто вставить атрибут стиля в тег элемента, но я как бы надеялся на другой вариант.

Ответы [ 3 ]

19 голосов
/ 14 января 2011

Проблема в том, что имя класса содержит пробел.

Это невозможно в CSS.То, что вы делаете, дает элементу два класса.

Вы можете обращаться к ним так:

.post.quote { .... }

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

post_quote
2 голосов
/ 14 января 2011

Этот элемент на самом деле имеет два класса - он отмечен как post class , так и классом quote.Таким образом, вы можете использовать следующие селекторы для доступа к нему:

// css
.post { ... }   // elements with the post class
.quote { ... }  // elements with the quote class

// jQuery
var postLis = $('.post');
var quoteLis = $('.quote');

Вы также можете сложить селекторы, чтобы вернуть все элементы, которые удовлетворяют всем условиям в селекторе, включая различные селекторы вместе:

// css
.post.quote { ... }  // elements with both the post and quote classes

// jQuery
var postAndQuoteLis = $('.post.quote');
0 голосов
/ 15 января 2011

Это может сработать:

$('li').each(function() {     
    if($(this).attr('class').indexOf(" ")>-1) {
       $(this).css('border','1px solid #ff0000')
    }  
}
...