日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

span标签的间距问题

發(fā)布時間:2023/12/18 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 span标签的间距问题 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一、前言

??平時在實現(xiàn)ui的設(shè)計稿的時候會遇見一些小問題,比如莫名其妙的間距,明明沒有加margin和padding,但是就是會出現(xiàn)間距,這就是兩個span標簽的間距問題。我們今天就這個問題進行分析。

二、現(xiàn)象描述

<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title> </head> <body><span>hello</span><span>world</span><span>helloworld</span> </body> </html>

??我們看這樣一段代碼,他展示出來的效果是這樣的

??可以看到,我們的span上沒有應(yīng)用任何樣式,但是仍然出現(xiàn)了間距。
??又或者是下面這段代碼;

<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>.inline-block {display: inline-block;width: 100px;height: 100px;border: 1px solid black;}</style> </head> <body><div class="inline-block"></div><div class="inline-block"></div> </body> </html>

??他的效果是這樣的:

??我們也可以很明顯的看到,兩個div直接出現(xiàn)了間隙。那么,這個間隙到底是怎么出現(xiàn)的呢?

三、原因

??導(dǎo)致這個現(xiàn)象出現(xiàn)的原因很簡單,我們知道多個空格或者回車瀏覽器都會解析成空格,其實,我們span與span之間敲的回車,就被解析成了空格。所以,那一點間隙,其實就是這個空格,如果不理解,看下面這段代碼就能理解了。

<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title> </head> <body><span>hello world</span><br><span>helloworld</span><br><span>hello</span><span>world</span> </body> </html>

??他的效果是這樣的;

??怎么樣,是不是一模一樣,這下你能理解為什么我們沒有加margin和padding,沒有添加任何樣式,他們之間也存在間距了吧?

四、解決方案

??既然知道了原因,那這個問題就很好解決了。

  • 代碼中不要寫空格:
    既然這個問題是空格導(dǎo)致的,那我們不要空格或者回車,這個問題就解決了<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title> </head> <body><span>hello</span><span>world</span><br><span>hello</span><span>world</span> </body> </html> ??像上面這種寫法,展現(xiàn)出來的效果就是:

    ??這樣兩個單詞之間的間距就沒有啦,不過這種寫法會導(dǎo)致我們的代碼不整潔,對于有強迫癥的小伙伴來說是接受不了的,我們可以用其他的方法來解決這個問題。
  • 通過css去消除間距
    ??既然它出現(xiàn)了間距,那我們啥也不管,把它弄掉就行了,我們可以用樣式把間距去掉,比如用margin/word-spacing/letter-spacing等:<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title> </head> <body=><span>hello</span><span style="margin-left: -5px;">world</span><div style="word-spacing: -40px;"><span>hello</span><span>world</span></div> </body> </html> ??效果是下面這樣的:

    ??可以看到這樣也能消除間距,但是如果使用margin,不能保證在任何情況下兩個單詞都恰好沒有間距。而自己在chrome中測試發(fā)現(xiàn),word-spacing的負值足夠大的情況下,不會將兩個單詞重疊,只會緊緊貼住。所以設(shè)置一個負值較大的word-spacing看起來是一個比較好的方法,但是不清楚在其他瀏覽器中是否和chrome保持一致。
  • 通過設(shè)置font-size消除間距
    ??這種方法是我平時喜歡用的,既然空格占了位置,那么我們把font-size設(shè)置為0,空格就不會占位置了,同時再單獨設(shè)置子元素的字體大小,就能干掉這個間隙了。<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title> </head> <body><div style="font-size: 0;"><span style="font-size: 20px;">hello</span><span style="font-size: 20px">world</span></div> </body> </html> ??他的效果是這樣的:

五、結(jié)語

??總的來說,肯定有很多方法可以去掉這個空隙,但是最普遍的集中方法就是這幾種了。同時,只要我們知道了這個空隙為何而來,我們就能對癥下藥,找到解決問題的辦法。

總結(jié)

以上是生活随笔為你收集整理的span标签的间距问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。