Предельно простой способ выделить первое слово в строке или текстовом блоке HTML, используя CSS и jQuery.
Что бы выделить, в принципе, любой кусочек в текстовой строке в HTML-разметке (букву, слово, фразу) можно воспользоваться тегом <span>. Достаточно просто обернуть требуемый участок текста этим тегом, а в таблице стилей CSS прописать необходимое форматироваие текста – вот собственно, и все. Например, HTML и CSS код для заголовка с выделенным первым словом будет выглядеть примерно так:
HTML
<h2><span>Текст</span> заголовка с выделением</h2>
CSS
h2 {color: darkgrey}
h2 span {color: red}
В результате для темно-серого заголовка первое слово будет выделено красным цветом. Таким образом можно задать совершенно любое формирование для заданного участка текста. Конечно, если такая необходимость возникает разово-эпизодически, то конструкцию <span>…</span> можно и ручками прописать, но если дело требует регулярного использования, например, во всех заголовках или элементах списка, то тут нужен способ как-то решить это автоматизированно-технически.
Для выделения первого символа или первого дочернего элемента в CSS существуют соответствующие псевдоклассы :firts-letter и :firts-child, а вот именно для выделения первого слова пока не внедрили, что-то наподобие :firts-word. И что же делать? — На выручку конечно же приходит jQuery!
Совсем коротенький java-скрипт можно прописать прямо в теле страницы или в отдельном js-файле, подключив через тег <script>
$(document).ready(function(){
$("h2").each(function () {
this.innerHTML = this.innerHTML.replace( /^(.+?)s/, "<span>$1</span> " );
});
});По сути скрипт, в каждом заданном элементе находит в начале строки последовательность символов, отделенную пробелом, и заменяет на саму себя с добавлением нужных нам тегов + пробел.
В результате работы скрипта, в каждом заголовке 2-го уровня H2 первое слово будет аккуратно автоматически обернуто тегом <span>…</span>. Можно комбинировать несколько селекторов в один с помощью запятой – jQuery выберет все элементы, которые соответствуют любому из селекторов, например, для применения ко всем заголовкам уровней с 1-го по 3-й вторая строчка будет выглядеть таким образом:
$("h1,h2,h3").each(function () {Если вам требуется сделать выделение для повторяющихся элементов, например, конкретного отдельного списка, то в качестве селектора можно указать тег родительского элемента с заданным классом:
HTML
<ul class="f_word"> <li>Перый элемент списка <li>Второй элемент списка <li>Третий элемент списка </ul>
CSS
.f_word li span {
color: red;
font-weight: bold;
}
jQuery
…
$('.f_word li').each(function () {
…В результате должен получится такой список, где первое слово будет иметь жирное начертание и красный цвет.
Реальный пример работы скрипта можно увидеть на одном из подготовленных наших сайтов.


