2011-10-21 10 views
2

私のdiv内のものはマージンがないという単純な質問があります。 0にすべてのマージン、パディングとボーダーを設定するとき は具体的に、コードボーダー/マージン/パディングは特に設定されていないと0ではありません0

要素間の空白まだある:ちょうど空のテキストファイルにこれらのコードを追加し、htmlとして保存して

<div id="menu" > 
<a href="#" style="margin:0;border:0;padding:0;background:red">sup</a> 

<a href="#" style="margin:0;border:0;padding:0;background:red">sup</a> 

</div> 

は、そこにあります負のマージンを特に設定しない限り、要素間に空白があります。これは動作しますが、私はちょうどそれが0、それが具体的に事前に0

おかげに設定されていないときに理由を知りたい:D


新発見:

私がしようとしていました

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> 
:私はこれを追加すると

ことが分かったちょうどその時、別の上に1を表示するためのブロック:上記の表示にを作ります

これは動作しませんでした

私はこのdoctypeを使用することになっていましたが、今は動作しません。

どのようなソリューションですか?次のように


コードは次のとおりです。このSCREENCAPに示すよう

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> 

<div id="kingmenu" style="position:absolute;top:90px;left:290px;width:55px;"> 
<a href="#"><img src="http://white-attic.com/themes/prestashop/img/kingtop.png"></a><a href="#"><img src="http://white-attic.com/themes/prestashop/img/kingbottom.png"></a> 
</div> 

問題がある: http://img828.imageshack.us/img828/8331/whitespace.jpg

答えて

3

空白があなたのマークアップです。

a要素をinline-blockに設定しても(既定ではありません)、HTMLには(正規化された)領域が表示されます。

これを避けるには、要素を互いに突き合わせる必要があります。

UPDATE:あなたのファイルは次のようになります。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> 
<div id="menu" ><a href="#" style="margin:0;border:0;padding:0;background:red">sup</a><a href="#" style="margin:0;border:0;padding:0;background:red">sup</a></div> 

私はリンクの間にスペースがないことをクロム、Firefoxの6およびIE 8でチェックインしました。

+0

このように、余白を設定する以外に空白を削除する方法はありますか? – robobooga

+0

こんにちは、xhtml doctypeを追加することで、再び機能しませんでした。 – robobooga

1

HTMLの新しい行がレンダリングされるときに空白として解釈されるためです。基本的に、あなただけのスペースを追加しているので、

<div id="menu" > 
<a href="#" style="background:red">sup</a><a href="#" style="background:red">sup</a> 
</div> 
+0

こんにちは、しかし、doctypeを追加することで私の質問によると。あなたの方法は機能しません。 doctypeを削除すれば、完全に動作します。回避策はありますか? – robobooga

2

これは、次のとおりです。

はこれを試してみてください。 Divはブロック要素であり、aはインライン要素です。したがって、基本的に両方のインライン要素が間隔を空けられます。

ブラウザはスペースを解釈することを忘れないでください。

関連する問題