input元素和display:inline-block的元素不在一行的解決辦法


每次用到了<input/> 元素 和inline-block的<span></span>(不一定是span,其他一些inline的元素也是一樣)元素,他們總是會不在一個水平線上,這個時候就很蛋疼了,畢竟不在水平線上,很不美觀。

有以下解決辦法:

  1.  對於input和span都用浮動,這樣就是平齊的,但是記得在外面清除浮動,避免對其他元素造成影響

  不加浮動時,可以通過截圖發現,它是不再一條水平線上的,有錯位的情況。

 

  在加了浮動后,情況如下圖:

代碼如下:

       

 2. 有的時候並不想用浮動解決,這時候可以用vertical-aline來實現。

  在W3School中,對於 vertical-aline 的介紹是:該屬性定義行內元素的基線相對於該元素所在行的基線的垂直對齊。

 布局           

給input加margin后,2個輸入框的距離就可以拉開了,按照我們想要的進行設置。還有這個vertical-align必須加在span標簽上。

如果說,你想將vertical-align加在input上,那么,你就必須進行如下的設置,才能達到你想要的效果:

布局還是沒變,就是上面的圖,只是css變一下

input框中間也有了距離,而且input和span也在同一水平線上            

其實也就是讓行內元素變成行內塊元素,並且加入了垂直對齊vertical-align:bottom,而且這里只能是bottom,其他的值,我一一嘗試過了,效果都達不到我們想要的。

 

 

 

 

 

 

 

 

 


免責聲明!

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



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