@ voyager ответ об использовании data-*
атрибута (например, data-gender="female|male"
самый эффективный и соответствующий стандартам подход на 2017 год:
[data-gender='male'] {background-color: #000; color: #ccc;}
Практически большинство целей может быть достигнуто, поскольку есть некоторые, хотя и ограниченные селекторы, ориентированные на текст. :: первой буквой является псевдо-элементом , который может применить ограниченный стиль к первой букве элемента. Также есть :: первая линия кроме того, что выбор первой строки элемента (например, абзаца) также подразумевает, что очевидно, что CSS можно использовать для расширения этой существующей возможности для стилизации определенных аспектов textNode. ,
До тех пор, пока такая адвокация не будет успешной и не будет реализована, следующая лучшая вещь, которую я мог бы предложить, когда это применимо, это explode
/ split
слова, использующие разделитель пробелов, выводить каждое отдельное слово внутри span
элемента, а затем, если цель слова / стиля является предсказуемой, использовать в сочетании с : n-ю селекторами :
$p = explode(' ',$words);
foreach ($p as $key1 => $value1)
{
echo '<span>'.$value1.'</span>;
}
Иначе, если не предсказуемо , снова используйте ответ voyager об использовании data-*
атрибута. Пример использования PHP:
$p = explode(' ',$words);
foreach ($p as $key1 => $value1)
{
echo '<span data-word="'.$value1.'">'.$value1.'</span>;
}