Тонкости работы css.content

160
31 марта 2018, 14:25

Задача: размещаю легенду в виде пар "термин":"значение". На форме это выглядит так:

<table class="legend-table">
<tr><td>Destination</td><td>адрес подсети или хоста назначения</td></tr>
<tr><td>Gateway</td><td>адрес шлюза, через который данный маршрут доступен</td></tr>
...
</table>

Далее, хочу сделать так, чтобы перед каждой расшифровкой значения шло тире - – | &ndash; | &#8211;. Чтобы вставить просто минус, использую стиль:

table.legend-table tr td:last-child:before {
    content: " - "
}

Но хочется, чтобы это было именно тире. Я сделал промежуточный вариант, вставив символ тире в код, благо исходник в UTF-8 и проблемы нет:

table.legend-table tr td:last-child:before {
    content: " – "
}

Но мне хотелось знать, есть ли нормальный вариант вставить HTML-код перед элементом посредством CSS (то есть &#8211; или &ndash;)

В идеале было бы найти способ вообще вставки чего угодно перед элементом, например иконки или глифа, или еще чего средствами CSS

Answer 1

В свойство content символы юникода могут записываться в 16-битной форме без префикса U+ с экранированием обратным слешем \ . Напрмер, среднее тире &#8211; имеет код U+2013 . Полный список символов и их кодов можно найти на https://unicode-table.com/ru/

ul{ 
  list-style:none; 
  padding:0; 
} 
li:before{ 
  content:'\2013'; 
  margin-right:5px; 
}
<ul> 
  <li>asdas</li> 
  <li>asdas</li> 
</ul>

READ ALSO
Задать внешнюю границу таблицы

Задать внешнюю границу таблицы

Внешняя граница в коде указана другим цветом, но перекрывается границами внутренних ячеек

210
Помогите построить правильно MySQL запрос

Помогите построить правильно MySQL запрос

Ссылка на задание https://sqltestnet/#192840 Нужно добиться объединения внутри group_concat (либо иначе, любым методом) по order_id и слепить их суммы

223