-2

私は不安を持って次の位置を使用しました:絶対; テンプレートのコンテナに入れて、中央と両側を配置します。

ただし、恐れていたように、自分以外の人が自分のWebサイトにアクセスしたい場合は、使用しないでください。これは、絶対位置とは、あなたにとって1つのことを意味し、異なる寸法の異なるモニター画面を持つ他の誰かにとって別のことを意味するからです。

別のコンピューターに行って自分のWebを確認したところ、ボックスが右にずれていましたか?

私は私が言っていることに正しいですか?

ありがとうございました

これが私のコンテナです

#container-center{
  width:630px; /*** Set to = center col width ***/
  height:500px;
  float:center;
  font-size:8px;
  display:inline;
  position:absolute;
    left:450px;
    top:80px;

/* \*/
  margin-left:-1px;
/* Hidden from IE-mac */
}



#left_container_home{
  width:150px; /*** Set to = center col width ***/

  height:500px;

  font-size:8px;
  display:inline;
  position:absolute;
    left:250px;
    top:80px;

/* \*/
  margin-left:-1px;
/* Hidden from IE-mac */
}


#right_container{
  width:200px; /*** Set to = center col width ***/

  height:500px;
  float:right;
  font-size:8px;
  display:inline;
  position:absolute;
  left:1085px;
  background:#F3F3F4;
  top:80px;

/* \*/
  margin-left:-1px;
/* Hidden from IE-mac */

}

このテクニックは正しいでしょうか?私がやったことはつまり。私が言うのは、「左450ピクセル」という言葉が私にとって正しいことであり、画面が小さい他の人にとって正しいことであるとは思えないからです。

このようにヘッダーを変更しましたが、左にずれています!マージン0オートと言っているだけならどうしてですか?

#header {


    background: url("../jq185/css/start/images/ui-bg_gloss-wave_75_2191c0_500x100.png") repeat-x scroll 50% 50% #2191C0;
    font-family: 'trebuchet ms',geneva,arial,tahoma,sans-serif;
    font-size: 10px;
    width: 930px; margin: 0 auto; 
    h2 {color:#ffffff;}



}
4

4 に答える 4

3

うーん、ダメ。比較的配置されたコンテナ内に絶対的に配置されてposition:absolute;いることを意味します。次の例を見てください。

x { position: absolute; top: 0; left: 0; }

これは、親コンテナがある場合は、その親コン​​テナの左上隅に配置されることを意味しますposition:relative;。ただし、そうでない場合は、DOMツリーが見つかるまで、DOMツリーを上に移動し続けます。誰もいない場合は、ドキュメントの左上隅に配置されます(body)。

CSSポジショニングの詳細については、こちらをご覧ください。

あなたの特定の例では、あなたは単に何かを中心に置くことを探していると思います。これを実現する最善の方法は、を使用するのではなくposition: absolute;、コンテンツを設定された幅のコンテナーにラップし、次のように自動マージンを適用することです。

.wrap { width: 920px; margin: 0 auto; }

これは、幅が固定されていることを意味し、両側の残りのスペースの共有をマージンとして等しく使用します。

于 2012-11-13T16:54:39.370 に答える
3

いいえ、絶対配置には多くの用途があります。CSS仕様のすべてに用途があり、「これを使用しないでください」と言ってはいけません。そうは言っても、ポジショニングは絶対的なものであり、適切に行わないとめちゃくちゃになる可能性があります。適切な状況に適切なツールを使用し、正しく使用する必要があります。

更新された質問に応じて編集します。

番号。そのために絶対配置を使用しないでください。あなたがやろうとしているのは、真ん中に div があることだけです。<div id="content"></div>これは、当時と同じくらい簡単なことで達成でき#content { width: 1000px; margin: 0 auto;、マークアップをほとんど使わずに、文字通りすべての人を中心に据えることができます。

于 2012-11-13T16:51:16.897 に答える
0

絶対配置では、画面サイズに関係なく、すべてのブラウザでまったく同じ画面オフセットに要素が配置されます。ただし、絶対的な位置にないものはすべて通常のモデルに準拠し、多くの場合、画面サイズによって変化します。あなたが見ているのは、他の要素と比較して、絶対位置にある要素が動いているということです。

絶対測位を使用しているときに画面サイズについて行った仮定は、変更されると破棄されます。

于 2012-11-13T16:53:14.713 に答える
0

絶対配置された要素は、その最も近い配置された祖先、つまり位置が「静的」以外に設定された祖先要素、またはそのような配置された祖先が存在しない場合はドキュメント ルート要素からオフセットされます。

これを行う理由はたくさんあります。コンテンツをセンタリングすることは通常その 1 つではありませんが、それを行うための他の方法があります。

于 2012-11-13T16:58:30.457 に答える