Подтвердить что ты не робот

Можете ли вы добавить разрывы строк в: после псевдоэлемента?

Я хочу добавить <br /> к определенному классу. Использование класса: after pseudo просто отображает <br /> как текст.

Есть ли способ сделать эту работу?

Это внутренне для IE8, поэтому проблемы с браузером не являются проблемой. Если я делаю

<span class="linebreakclass">cats are</span> brilliant

Я хочу, чтобы "блестящий" появлялся на новой строке.

4b9b3361

Ответ 1

Вы не сможете отображать теги HTML, но вы можете установить стиль следующим образом:

.needs-space:after
{
    content: " ";
    display: block;
    clear: both; /* if you need to break floating elements */
}

Основной параметр здесь display: block; Это отобразит: после содержимого внутри a DIV. И этот псевдоэлемент поддерживается всеми последними браузерами. Включая IE. Говоря об этом, вы должны знать о своих пользователях и их браузерах.

Ответ 2

Вы можете использовать escape-последовательность \A, которая будет отображаться как новая строка:

.new-line:after {
  white-space: pre-wrap;
  content: "\A";
}

Этот метод упоминался в Спецификации CCS 2.1 для свойства content:

Авторы могут включать новые строки в сгенерированном контенте, написав "\A" escape-последовательность в одной из строк после 'content'имущество. Этот вставленный разрыв строки по-прежнему зависит от 'white-space'.

Ответ 3

Ухудшается - класс after после этого даже не работает в IE6 (и, вероятно, некоторые другие браузеры тоже).

Я думаю, что вы действительно хотите здесь, это маржа в нижней части элемента, чтобы обеспечить интервал.

Просто

.myElement {
    margin-bottom: 1em;
}