Дмитрий184
Мастер
Дата регистрации:
29.06.2012 08:48:56
Сообщений: 225
Здравствуйте!
Есть текст, который помещается в контейнер <p><p>. Тегу <p> можно задать внешний отступ вверх и вниз, например, margin: 10px 0;
Но при изменении размера шрифта, размер внешнего отступа не изменится. А как можно сделать, чтобы при изменении размера шрифта, изменялся размер внешнего отступа в зависимости от размера шрифта. Типа того, как меняется высота строки, например, line-height: 1.5
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
Думаю, что никак, хотя и не уверен. В любом случае, непонятно, зачем это нужно. Шрифт фиксируется в CSS, если его требуется уменьшить через JS, то и отступы можно уменьшить через JS.
Дмитрий184
Мастер
Дата регистрации:
29.06.2012 08:48:56
Сообщений: 225
Когда пишется style.css , то создается универсальный селектор, соответственно margin обнуляются и для параграфов.
* {
margin: 0;
padding: 0;
}
Если потом в разных параграфах писать текст разного размера, то для правильности оформления придется каждому параграфу задавать свой margin, что не удобно, особенно, если потом придется менять размер шрифта.
я и подумал, может можно как-то установить margin для параграфов, чтобы margin менялся в зависимости от размера текста. Ведь если не обнулять margin, то сам браузер как-то меняет размер margin в зависимости от размера шрифта.
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
Браузер не меняет margin в зависимости от размера шрифта. И у текста нет margin, он есть только у тех блоков, внутри которых находится текст. Например, у тега <p> или тега <div>.
Дмитрий184
Мастер
Дата регистрации:
29.06.2012 08:48:56
Сообщений: 225
Конечно, margin есть у <p></p> - и вот этот margin автоматически изменяется браузером, в зависимости от размера текста находящегося в этом <p></p>
Например,
<body>
<p style="font-size: 20px">
Пробный текст
</p>
<p style="font-size: 40px">
Пробный текст
</p>
</body>
У верхнего <p></p> - margin: 20px 0;
У нижнего <p></p> - margin: 40px 0;
в этом и вопрос - как можно прописать стиль для margin <p></p> - если универсальный селектор обнуляет margin для всех тегов в коде.
Причем margin не должен быть фиксированным, типа, margin: 20px 0; иначе он не изменится, если в теге <p> текст будет другого размера.
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
Да, я понял, но такое через CSS никак не сделать. Только через JS. Надо после прогрузки страницы обойти все теги <p> и в зависимости от размера шрифта установить нужный margin.
Дмитрий184
Мастер
Дата регистрации:
29.06.2012 08:48:56
Сообщений: 225
Михаил! Я Вы подобный скрипт не пробовали написать? Мне кажется, такой скрипт может быть востребован при проф. верстке - он облегчит верстку, на страницах которой идет текст разного размера.