Jump to content
  • 0

Позиционирование текста внутри тега H2


TheKIP
 Share

Question

Имеется тег H2 (генерируется CMS, да и в тексте его удобней использовать для типографики).

Дизайнером, для него заданно следующее оформление (белый шрифт, и картинка в фоне):

h2.jpg

Проблема в том, что текст в заголовке, не всегда помещается в одну строку, и необоходимо сделать, что бы он всегда оставался по средине своего бэкграунда.

Т.е. выглядеть так:

h2-1.jpg

Для этого я создал вот такой код (html я приводить не буду, т.к. он и так понятен):

.content h2 {
background:url("images/h2_bg.gif") no-repeat scroll center bottom transparent;
color:#FFFFFF;
line-height:40px;
margin:20px 0 0 -20px;
padding:0 0 0 20px;
width:517px;
}

В коде, я задаю line-height:40px; что бы строка была посередине и соответсвенно из за него, одна строка текста встает ровно по середине заливки (заливка высотой 40пикс), ну а вторая строка, разумеется вылазиет за её пределы. Такой метод не подходит.

Попытка отцентровать тект в бэкграунде, установкой высоты элемента height: 40px, и поставив вертикальное выравнивание vertical-align:middle, ни к чему не привела.

Если убрать line-height:40px;, и больше ничего не применять, то 2 строки, спокойно влазиют в фон, но соответсвенно когда остается одна строка, оно находится не по середине а ближе к верхнему краю.

Так вот вопрос, КАК это реализовать? И реально ли вообще? (Что бы строки всегда были по середине, не зависимо от их количества)

Link to comment
Share on other sites

8 answers to this question

Recommended Posts

  • 0

не работает разумеется. Но подгонять под них и не хочу. Июо инфа и так будет видна, и ничто нигде налазить не будет, будет только лишь не отцентровано. (не критично вобщем).

Лучше подскажите что делать с margin-ами? При присвоении объекту стиля ячейки, они перестали работать..

Link to comment
Share on other sites

  • 0
не работает разумеется. Но подгонять под них и не хочу. Июо инфа и так будет видна, и ничто нигде налазить не будет, будет только лишь не отцентровано. (не критично вобщем).

В сети можно найти экспрешан для ИЕ6-7, чтобы был полный кросс.

Лучше подскажите что делать с margin-ами? При присвоении объекту стиля ячейки, они перестали работать..

Обернуть в див всю конструкцию и ему уже назначить отступы.

Link to comment
Share on other sites

  • 0
В сети можно найти экспрешан для ИЕ6-7, чтобы был полный кросс.

Обернуть в див всю конструкцию и ему уже назначить отступы.

Да с дивами то все понятно, еслиб была возможность верстать этот кусок с дивами, то и невозникло бы этой темы. Суть в том, что пользователь должен в редакторе набрать заголовок, присвоить ему стиль "заголовок 2" и все оформилось по чудному мгновенью. А добавлять дивы вокруг, это решение только лишь для статического сайта.

Експрешены, видел в той же статье что дал пользователь в первом комментарии. Не использовал, потому что просто лень и не нужно, да и вроде они применяются только к блочному объекту находящемуся внутри ячейки, а у меня там только текст, без какой либо обертки.

В общем я так понимаю свойство display: table-cell анулирует действие маржинов, и сделать это никак нельзя. Если уж это так, то придется так и оставить, дизайн вроде не сильно портится..

Link to comment
Share on other sites

  • 0
Да с дивами то все понятно, еслиб была возможность верстать этот кусок с дивами, то и невозникло бы этой темы. Суть в том, что пользователь должен в редакторе набрать заголовок, присвоить ему стиль "заголовок 2" и все оформилось по чудному мгновенью. А добавлять дивы вокруг, это решение только лишь для статического сайта.

А подправить редактор так чтобы юзер в редакторе набрать заголовок, присвоил ему стиль "заголовок 2" и текст обернулся не просто тегом <h2></h2>, а например <div class="heading"><h2></h2></div> получится?

Edited by mishka2
Link to comment
Share on other sites

  • 0

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

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy