Unten ist der HTML-Code mit verschachtelten div
und einem p
als innerste Element,Wie funktioniert 'em' css Einheit für positionierte Elemente?
<!DOCTYPE html>
<html>
<head>
<title>How em unit works?</title>
<link href="style.css" rel="stylesheet" type="text/css" media="all">
</head>
<body>
<div>
<div>
<p> Some text</p>
</div>
</div>
</body>
</html>
wenn wie
body{
font-size: 10px; /* Default font size is 16 css pixels for body tag*/
}
body > div{
font-size: 20px;
}
body > div > div{
font-size: 50px;
}
p{
font-size: 0.5em; /* 25 css pixels */
width: 6em; /* 6X50 css pixels */
height: 6em; /* 6X50 css pixels */
padding-right: 3em; /* 3X50 css pixels */
margin-left: 3em; /* 3X50 css pixels */
background-color: red;
}
dann, Absatztext, nimmt font-size
als 0.5 x 50px
(das 0,5-fache des nächsten Mutter gestylt font-size
).
Meine Frage,
body{
font-size: 10px; /* Default font size is 16 css pixels for body tag*/
}
body > div{
font-size: 20px;
position: relative;
}
body > div > div{
font-size: 50px;
}
p{
font-size: 0.5em;
width: 6em;
height: 6em;
padding-right: 3em;
margin-left: 3em;
background-color: red;
position: absolute;
}
wenn p
position: absolute
und äußere bekommt die meisten div
werden position: relative
, dann, Wie funktioniert das em
Einheit Verhaltensänderung für p
Element?
Es ändert sich nicht. Die Positionierung wirkt sich nicht auf die Schriftgröße aus. Gibt es ein bestimmtes Problem, auf das Sie stoßen? Wenn ja, können Sie es für uns replizieren? P.S. Ich denke, du meintest "25px", wo du "15px" in deinem Codebeispiel hast. FWIW Ich würde anfangen, "rem" anstelle von "em" zu verwenden, wenn Sie IE8 nicht unterstützen müssen. Einfacher zu arbeiten. – hungerstar
@hungerstar Korrekt. lass mich bearbeiten. – overexchange
Verwenden Sie 'rem' es ist viel einfacher, relative Größen mit – Martin