Мои поля css не ведут себя так, как я хочу, или ожидаем их. Мне кажется, что мой верхний маркер заголовка влияет на теги div, окружающие его.
Это то, чего я хочу и ожидаю:
... но это то, что я получаю:
Источник:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Margin test</title>
<style type="text/css">
body {
margin:0;
}
#page {
margin:0;
background:#FF9;
}
#page_container {
margin:0 20px;
}
h1 {
margin:50px 0 0 0;
}
</style>
</head>
<body>
<div id="page">
<div id="page_container">
<header id="branding" role="banner">
<hgroup>
<h1 id="site-title"><span><a href="#" title="Title" rel="home">Title</a></span></h1>
<h2 id="site-description">Description</h2>
</hgroup>
</header>
</div>
</div>
В этом примере я преувеличивал маржу. По умолчанию маркер браузера на h1-теге несколько меньше, и в моем случае я использую Twitter Bootstrap, с Normalizer.css, который устанавливает значение по умолчанию для 10px. Не главное, главное. Я не могу, не хочу, не менять границу на h1-теге.
Я думаю, это похоже на мой другой вопрос; Почему этот CSS-верхний стиль не работает?. Вопрос в том, как решить эту конкретную проблему?
Я прочитал несколько потоков по аналогичным проблемам, но не нашел реальных ответов и решений. Я знаю, что добавление padding:1px;
или border:1px;
решает проблему. Но это только добавляет новые проблемы, так как я не хочу заполнения или рамки для своих div-тегов.
Должно быть лучшее решение, лучшее решение? Это должно быть довольно часто.