2013-05-17 2 views
0

В случаях найти текст в HTML-коде, не погруженная в тегах, такие как:Как выбрать свободный текст между тегами

<sometag> ex1 </sometag> 

Я знаю много способов, чтобы выбрать текст, используя ар тег или с использованием класса или id на div и т. д., но мой вопрос: как вы пишете правило css для этого кода, как есть? Кроме того, я хочу, чтобы правило быть специфичным для текста так:

sometag {...}

является нежелательным, поскольку он является более универсальным.

Спасибо за все заранее.

+2

Вы имеете в виду 'sometag {цвет: красный}'? –

+0

, если это действительный html, тогда весь текст, безусловно, будет внутри ''. А если нет, это может быть где угодно, но такой документ не следует никаким нормам. – SachinGutte

+0

Спасибо за ваш ответ, я отредактировал вопрос, чтобы желаемое правило специально предназначалось для текста и не было таким общим. – NoChance

ответ

1

Проще говоря, нет. В настоящее время селектор не выбирает TEXT только с помощью CSS. Вы можете (и должны) использовать разметку, чтобы получить результат вы ищете:

HTML:

<sometag> 
    <span>text here</span> 
    <img src='..' /> 
    some other stuff i don't want to select in my CSS 
</sometag> 

CSS:

sometag span{ 
    /* do something here */ 
} 
+0

+1 для информации., Я буду отмечать ответ @nullability как ответ, так как он был получен раньше вашего. – NoChance

+0

На самом деле я ответил за 6 минут до этого, но отредактировал много раз после (проверьте атрибут title в хроме): P в любом случае, не беспокойтесь –

+0

Так что вы этого заслуживаете, спасибо. – NoChance

0

Если "тег" является зарезервированным именем, как вход, отд, и т.д., вы можете использовать это:

например

sometag { 
    border-width: 1px; 
} 

конечно, каждый тег может получить идентификатор или класс, таким образом, вы до сих пор используете для идентификатора или класса:

ид

<sometag id="myid"></sometag> 

#myid { 
    border-width: 1px; 
} 

класса

<sometag class="myclass"></sometag> 
.myclass { 
    border-width: 1px; 
} 
+1

Я думаю, что OP обеспокоен всем текстом, который не содержится ни в каких тегах. – SachinGutte

+0

Спасибо, но мне нужен текст без тегов. – NoChance

1

Текстовых узлы не может иметь стилей применяются к ним, так что все, что вам нужно, стиль должен быть в элементе. Если вы хотите, чтобы часть текста внутри вашего элемента была написана по-разному, оберните ее в промежутке или div, например.

Элемент упаковки затем может быть выбран с использованием CSS на основе типа элемента, идентификатора, класса или порядка документа, но не по содержанию.

Вы можете, однако, использовать JQuery для выбора по содержанию, используя :contains селектор: http://api.jquery.com/contains-selector/

+0

+1 для бит jquery - Спасибо. – NoChance

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