2012-03-26 8 views
21

は、ゴーストマージンは、私たちが0にマージンとパディングを設定していてもcanvas要素の下に表示されますHTML5キャンバス要素の下のゴーストマージンを削除しますか?我々はHTML5のcanvas要素を作成すると

例:私たちは、「物事の様々なを試してみましたが、でき

http://jsfiddle.net/yvbmd/ゴーストマージンを消去してください。

このゴーストマージンを持たないキャンバス要素を作成するにはどうすればよいですか?

答えて

39

vertical-align: bottomを追加します。

これは、キャンバスがインライン要素であるために発生します。したがって、それは効果的に文字と見なされます。したがって、ベースラインの下にあるgjpqyなどの文字の場合は、ラインの下に少しのスペースを残すというベースラインのルールに従わなければなりません。 vertical-alignbottomに設定すると、実際にキャンバスをドロップダウン文字の一番下に揃えています。キャンバス自体の高さがline-heightより大きい限り、問題はありません。キャンバスがline-heightよりも短い場合は、キャンバスの上に「ゴーストマージン」が表示されます。bdfhkltのスペースを確保しています。これは、line-height: 1pxルールを追加することで修正できます。

+0

ありがとう、Kolink!あなたの洞察のために、キャンバス要素を "display:block"のブロック要素にすることで、この問題を解決しました。このソリューションの問題はありますか? – Crashalot

+2

さて、それは** a **解決策です。それはあなたがキャンバスを使っているかどうかにかかっています。 –

+0

vertical-align:bottom;表示ブロック;私の場合に働いた。 – Houman

関連する問題