いくつかのdiv+cssの面接問題を見て、みんなはいっしょに見てみます

6297 ワード

1.ハイパーリンクアクセス後にhoverスタイルが発生しない問題?
クリックされてアクセスされたハイパーリンクスタイルはhoverとactiveを持たないので、解決方法はCSS属性の並び順を変えることです:L-V-H-A
  2.IE 6の2倍マージンBUG
例:
<style type="text/css">
  body
{margin:0}
  div
{ float:left;
margin-left
:10px;
width
:200px;
height
:200px;
border
:1px solid red }
</style>

 
浮動後は本来10 px離れているが、IEは20 pxと解釈され、解決策はdisplay:inlineを加えることである.
  3.なぜFF下テキストは容器の高さを広げられないのですか?
標準ブラウザで高さ値を固定している容器はIE 6のように開けられませんが、私は高さを固定したいし、開けられるようにするにはどうすればいいのでしょうか.方法はhe ight設定min-height:200 pxを取り除くことです.ここではmin-heightを知らないIE 6に配慮するために、以下のように定義することができる.
 
div { height:auto!important; height:200px; min-height:200px; }

 
 
 
  4.どうしてweb標準の中でIEはスクロールバーの色を設定することができませんか?
元のスタイルの設定:
 
<style type="text/css">
body
{ scrollbar-face-color:#f6f6f6; scrollbar-highlight-color:#fff;
      scrollbar-shadow-color
:#eeeeee; scrollbar-3dlight-color:#eeeeee;
         scrollbar-arrow-color:#000; scrollbar-track-color:#fff;
          scrollbar-darkshadow-color
:#fff; }
</style>

 
解決策はbodyをhtmlに変えることです
  5.なぜ1 px程度の高さの容器を定義できないのですか?
IE 6ではこの問題はデフォルトの行高によるもので、解決方法もたくさんあります.例えば、overflow:hidden|zoom:0.08|line-height:1 px
  6.FLASH上にレイヤーを表示するにはどうすればいいですか?
解決策はFLASHに透明度を設定することです.

  7.階層をブラウザに垂直に配置するにはどうすればいいですか?
 
<style type="text/css">
<!--
div
{
position
:absolute;
top
:50%;
left
:50%;
margin
:-100px 0 0 -100px;
width
:200px;
height
:200px;
border
:1px solid red;
}
-->
</style>

 
ここでは、パーセンテージ絶対位置決めを使用して、外部パッチの負の値との方法で、負の値の大きさは、その幅の高さを2で割ったものです.
8、firefoxネストdivラベルの中央問題の解決方法
次のように仮定します.
 
<div id="a">
  <div id="b"> </div>
</div>

 
bをaの中央に配置する場合は、一般的にCSSでaのtext-align属性をcenterに設定するだけです.このような方法はIEの中ですべて正常に見えます;しかしFirefoxではbは左になります.
解決策はbの横marginをautoに設定することである.例えばbのCSSスタイルは、margin:0 auto;とする.