2015-06-05 3 views
0

У меня есть этот пример:Как выровнять текст в центре в левом положении?

http://jsfiddle.net/3gmeK/298/

CSS и HTML:

div { padding:10px 20px; background-color:#F51; } 
 

 
p  { text-align:left; padding:5px; background-color:#333; color:#fefefe; }
<div> 
 
    <p> 
 
    There are many fish in the sea! So lovely!<br> 
 
    many fish in the sea! So lovely! 
 
    </p> 
 
</div>

Я хочу, чтобы мой текст в его нынешнем виде выравнивается по центру.

Я не хочу использовать "text-align: center;"

Внутри этого Div мой текст означает, что в текущей форме.

Надеюсь, мне удалось лучше объяснить, что они хотят делать. Вы можете помочь мне решить эту проблему?

Заранее благодарен!

+0

Это то, что вы имеете в виду? http://jsfiddle.net/k8j7yehs/ – knolleary

+0

http://jsfiddle.net/3gmeK/300/ –

+0

Образ того, как это должно выглядеть, было бы полезно, но «text-align: center» на ** parent ** и 'inline-block' на' p' будет центрировать абзац (но не текст ** в ** 'p", но, очевидно, цвет bg будет «рушиться» - http://jsfiddle.net/Paulie_D/3gmeK/302 / –

ответ

3

Это может быть сделано путем добавления дополнительного span вокруг текста:

  • Добавить text-align: center; в p
  • Добавить дополнительный span вокруг текста
  • Добавить новый селектор span с display: inline-block; сделать span центр по отношению к p и text-align: left; для смещения текста влево

div { 
 
    background-color: #F51; 
 
    padding: 10px 20px; 
 
} 
 
p { 
 
    background-color: #333; 
 
    color: #fefefe; 
 
    padding: 5px; 
 
    text-align: center; 
 
} 
 
span { 
 
    display: inline-block; 
 
    text-align: left; 
 
}
<div> 
 
    <p> 
 
    <span>There are many fish in the sea! So lovely!<br> 
 
      many fish in the sea! So lovely!</span> 
 
    </p> 
 
</div>

Смежные вопросы