Please, consider the following CSS code:

body {
font-family: 'Open Sans', sans-serif;
font-size: 16px;
font-weight: normal;
} 

.main-headline {
font-family: 'Open Sans', sans-serif;
font-size: 3.1875em;
font-weight: 700;
text-align: center;
margin-bottom: 0em;
margin-top: 5em;
}

.h1-sub {
font-family: 'Open Sans', sans-serif;
font-size: 1.3125em;
font-weight: 400;
text-align: center;
margin-top: 0.3125em;

.container_12 .grid_12 {
width:58.75em;
}

And HTML:

<header class="container_12 grid_12 alpha omega">
    <div class="grid_12 alpha omega">
        <hgroup>
                <h1 class="main-headline">Some text</h1>

            <p class="h1-sub grid_12 alpha omega">Some text</p>
        </hgroup>
    </div>
</header>

The problem is: .h1-sub class takes weird width. There is a body font-size 16px and container: 58.75em which should be equal 940px. But instead it I receive 1234px in width. I've made a conclusion that my width calculates from .h1-sub font-size which is 1.3125em or 21px.

Does 1em value can be inherit not only from body font-size? Notice that nothing happened to .main-headline class where is font-size has been overrided also.

Thank you for help in advance.

有帮助吗?

解决方案

This line of CSS:

.container_12 .grid_12 { width:58.75em; }

Is trying to select anything with a class of .grid_12 inside .container_12. That is therefore trying to give the width to the p tag. If that's not what you're trying to do, you need to just declare:

.container_12 { width:58.75em; }

Also you forgot to close the .h1_sub styles with a } at the end:

.h1-sub {
font-family: 'Open Sans', sans-serif;
font-size: 1.3125em;
font-weight: 400;
text-align: center;
margin-top: 0.3125em; }

Here is a working fiddle: http://jsfiddle.net/B893S/

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top