Ответ 1
Зависит от ваших объявлений CSS и вашей разметки, но вы можете попробовать поместить это объявление CSS в родительский контейнер:
white-space: pre-line;
При таком подходе вы избегаете преобразования элемента .centered-holder
в элемент блока, и вы все равно можете использовать, например, text-align:center
в родительском контейнере.
до строки- Это значение приведет к сглаживанию последовательностей пробелов в один пробельный символ. Разрывы строк будут происходить везде необходимо заполнить линейные ящики и на новых строках разметки (или на появление "\ a" в сгенерированном контенте). Другими словами, нормальный, за исключением того, что он честный явный разрыв строки.
Здесь вы можете найти дополнительную информацию о пробеле:
Чтобы закончить, вы можете использовать эти объявления CSS:
.parent-container {
white-space: pre-line /* Create new line for each DIV */;
line-height:0 /* Mask the extra lines */;
*white-space: pre /*FixIE7*/;
*word-wrap: break-word /*FixIE7*/;
}
.centered-holder {
display: inline-block;
line-height:100% /* Restore a default line-height */;
*display: inline /*FixIE7*/;
*zoom: 1 /*FixIE7*/;
}
Я нашел этот вопрос очень интересным, поэтому я даю также объявления CSS для исправлений IE6-7 (pre-line
и inline-block
). Это должно быть полезно для некоторых других людей, у которых есть аналогичная проблема.