標簽里面直接嵌套圖片,下面出現一小段空白的原因


今天在寫頁面時,發現在a標簽,里面嵌入<img>底部會出現空白的問題!

請看示例代碼:

1 <a style="border: 2px dashed blue">
2     <img src="images/module/zright2.jpg" alt="圖片">
3 </a>

請看示例效果圖:

現在出現了兩個問題,首先a標簽,沒有因為img的大小而被撐大,然后是a的內部下面出現空白。

1、首先,<a>標簽是inline的,框模型是:行內框。行內框沒有包含圖片的表現,<img>的標簽就好像放在一條公路上一樣。所以要使img能像放進一個盒子一樣,就應該使用塊級框:比如:
display:block;
/*或者*/
display:inline-block;
關於框模型!推薦你去看看css的官方http://www.w3.org/TR/CSS2/或者網上很多文章都有!

2、<img>標簽為什么會有底下的空白呢?這你要理解所謂的“基線(baseline)”。這是一個英文排版概念。我這里還是引用下知乎人的鏈接吧!http://www.zhihu.com/question/21558138 講得很周到!

3、總結這個問題的幾種解法:
A、處理基線
a{display:block;}
img{vertical-align:bottom;}
 
B、強行去掉<a>標簽的行高
a{display:block;line-height:0px;}
 
C、沒有設置行高的時候可以去掉字體大小
a{display:block;font-size:0px;}

文章乃參考、轉載其他博客所得,僅供自己學習作筆記使用!!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM