изменить стиль css элемента с пробелом в имени класса

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

это ее структура:

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


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

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

3 ответов


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

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

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

.post.quote { .... }

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

post_quote

этот элемент на самом деле имеет два классы-он отмечен как post класс и на 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');

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

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