ホームページ > 記事 > ウェブフロントエンド > CSSの位置属性・絶対・相対など5つの値の解説
この記事では主にCSSの位置属性、絶対相対などの5つの値の説明を紹介しています。必要な友達に参考にしていただけるように共有します。 、ほとんどすべての主流ブラウザは位置属性をサポートしています (「inherit」を除く、「inherit」は IE8 以前のバージョンを含むすべての IE ブラウザをサポートしているわけではありません。また、IE9 と IE10 はテストされていません)。以下は、5 つの値についての w3school の説明です。必要な友人はそれを参照できます
現在、ほとんどすべての主流ブラウザーが位置属性をサポートしています (「継承」を除く)。「継承」は、IE8 と以前のバージョンの IE、および IE9 を含むすべてのブラウザーをサポートしているわけではありません。 IE10 はテストされていません) 以下は、w3school による位置の 5 つの値の説明です:
その中で、絶対値と相対値が最もよく使用され、固定値もより頻繁に使用されます。修正はサポートされていません)。
1. Absolute (絶対位置)Absolute は、テキスト フローから分離されます (つまり、ドキュメント内の位置を占めなくなります)。上、右、下、左 (略して TRBL) の位置決めを通じてブラウザーの位置を決定します。位置決めされた親オブジェクト (相対と絶対の組み合わせについては後述します) または位置決めのためのボディ座標の原点を選択したり、Z インデックスを使用して階層分類を実行したりできます。 TRBL 値が設定されていない場合、absolute は親オブジェクトの座標を開始点として使用します。TRBL 値が設定されている場合は、ブラウザの左上隅が原点として使用されます。具体的なケースは次のとおりです:
コードをコピーしますコードは次のとおりです:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>position:absolute定位</title> <style type="text/css"> html,body,p{ margin:0; padding:0; list-style:none; } .center{ margin:30px; border:#999999 solid 10px; width:400px; height:300px; } .p1{ width:200px; height:200px; background:#0099FF; /*设定TRBL*/ position:absolute; left:0px; top:0px; } .p2{ width:400px; height:300px; font-size:30px; font-weight:bold; color:#fff; background:#FF0000; } </style> </head> <body> <p class="center"> <p class="p1"></p> <p class="p2">position:absolute定位测试</p> </p> </body> </html>このコードの効果は次のとおりです:
これはTRBLを設定した後の効果です(ブラウザの左上隅にある TRBL を原点として設定します)、TRBL が設定されていない場合(TRBL が設定されていない場合、親オブジェクトの座標が原点として使用されます)、つまり p1 を次のコードに変更した場合
コードをコピーします コードは次のとおりです:
.p1{ width:200px; height:200px; background:#0099FF; /*没有设定TRBL*/ position:absolute; }
効果は次のとおりです:
2. Relative (相対的な位置決め)relative はその名前が示すように、相対的な意味です。 、要素自体がドキュメント内に表示される位置を基準にして要素を移動します。 TRBL を使用して要素の位置を移動できます。実際、要素は依然としてドキュメント内の元の位置を占めていますが、視覚的には相対的に移動されます。元の位置に戻します。具体的なケースは次のとおりです:
コードをコピーします コードは次のとおりです:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>position:relative定位</title> <style type="text/css"> html,body,p{ margin:0; padding:0; list-style:none; } .center{ margin:30px; border:#999999 solid 10px; width:400px; height:300px; background:#FFFF00; } .p1{ width:200px; height:150px; background:#0099FF; position:relative; top:-20px; left:0px; } .p2{ width:400px; height:150px; font-size:30px; font-weight:bold; color:#fff; background:#FF0000; } </style> </head> <body> <p class="center"> <p class="p1"></p> <p class="p2">position:relative定位测试</p> </p> </body> </html>
コードによって生成される効果は次のとおりです:
3. Web デザインでは、absolute がよく使用されます。 Floating はページのレイアウトに使用されますが、Floating には多くの不確実な要素 (例: IE ブラウザーの互換性の問題) が伴います。相対的に言えば、一部のレイアウトでの位置決めは、より簡単、高速、および互換性が高くなります (相対および絶対と組み合わせて使用します)。以下は Web ページでの例です (Web ページの先頭部分)。以下に続きます:
コードをコピーします
コードは次のとおりです:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
html,body,p,ul,li,a{
margin:0;
padding:0;
list-style:none;
}
a, a:hover{
color:#000;
border:0;
text-decoration:none;
}
#warp,#head,#main,#foot
{
width: 962px;
}
/*设置居中*/
#warp{
margin: 0 auto;
}
#head{
height:132px;
position:relative;
}
.logo{
position:absolute;
top:17px;
}
.head_pic{
position:absolute;
top:17px;
left:420px;
}
.sc{
position:absolute;
right:5px;
top:12px;
}
.sc a{
padding-left:20px;
color:#666;
}
.nav{
width:960px;
height:42px;
line-height:42px;
position:absolute;
bottom:0px;
background:url(img/nav_bj.jpg) no-repeat center;
}
.nav ul{
float:left;
padding:0 10px;
}
.nav li{
float:left;
background:url(img/li_bj.jpg) no-repeat right center;
padding-right:40px;
padding-left:20px;
text-align:center;
display:inline;
}
.nav li a{
font-size:14px;
font-family:Microsoft YaHei !important;
white-space:nowrap;
}
.nav li a:hover{
color:#FBECB7;
}
</style>
<title></title>
</head>
<body>
<p id="warp">
<p id="head">
<p class="logo"><img src="img/logo.jpg" /></p>
<p class="head_pic"><img src="img/head_pic.jpg" /></p>
<p class="sc">
<a href=""><img src="img/sc_btn.jpg" /></a>
<a href=""><img src="img/sy_btn.jpg" /></a>
<a href=""><img src="img/kf_btn.jpg" /></a>
</p>
<p class="nav">
<ul>
<li><a href="">首页</a></li>
<li><a href="">关于我们</a></li>
<li><a href="">团队文化</a></li>
<li><a href="">公司动态</a></li>
<li><a href="">资讯参考</a></li>
<li><a href="">业务中心</a></li>
<li><a href="">合作银行</a></li>
<li><a href="">联系我们</a></li>
</ul>
</p>
</p>
<p id="main"></p>
<p id="foot"></p>
</p>
</body>
</html>
効果は次のとおりです:
上記のコードでは、最初に頭の相対位置を設定します。そうすると、内部のすべての子要素が絶対値に設定されていることがわかります。これは、body ではなく、head に対して相対的に配置されます。これはフローティングを使用するよりもはるかに簡単で便利であり、互換性の問題を心配する必要はありません。
以上がCSSの位置属性・絶対・相対など5つの値の解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。