摘要:是為了讓偽元素寬度和父元素相同并多帶帶占滿一行。總結(jié)下來(lái)也就是說(shuō),偽元素自己獨(dú)占了一行使瀏覽器認(rèn)為該元素不是一行文字,而是兩行,所以就生效了。
前幾天在交流群里碰到了這樣的一個(gè)問(wèn)題“怎樣讓下圖這組短名字保持長(zhǎng)度一致,兩端對(duì)齊呢?”
我在百度上查閱了一些文章,但是經(jīng)過(guò)測(cè)試基本都沒(méi)成功,最后找到一個(gè)可用的,并推理了一下原理,下面來(lái)跟大家分享一下。
解決這個(gè)問(wèn)題的就是它:
text-align: justify; text-align-last:justify;//IE
直接使用這個(gè)屬性經(jīng)過(guò)測(cè)試在Chrome,Firefox,IE 都是不生效的。
因?yàn)檫@個(gè)方法只對(duì)兩行等以上的文字生效,單行不生效,如果想要這個(gè)方法生效的話,需要偽元素“::after”配合使用 (css代碼如下):
element::after { content:""; width:100%; display:inline-block; }
下面說(shuō)一下我個(gè)人推測(cè)的原理:
content:""
是為了讓元素生效,內(nèi)容為空,實(shí)際上他是存在的,但是不可見(jiàn),可以被瀏覽器識(shí)別。
width:100%
是為了讓偽元素寬度和父元素相同并多帶帶占滿一行。
display:inline-block;
特意寫(xiě)上這句話是因?yàn)閠ext-align: justify;只對(duì)inline或inline-block元素生效,但是在實(shí)際開(kāi)發(fā)中,我們是無(wú)法避免元素可能是block塊級(jí)元素的,所以才加上了這一屬性。
總結(jié)下來(lái)也就是說(shuō),偽元素::after 自己獨(dú)占了一行使瀏覽器認(rèn)為該元素不是一行文字,而是兩行,所以text-align: justify;就生效了。
其他一些問(wèn)題:
1、在寫(xiě)demo時(shí)發(fā)現(xiàn),如果瀏覽器是Chrome的話,多帶帶寫(xiě)text-align: justify;并不生效,
但是多帶帶寫(xiě)text-align-last:justify;就生效了,并且不寫(xiě)偽元素也可以,具體什么原因不知道,但是不建議使用,因?yàn)椴殚嗁Y料發(fā)現(xiàn) text-align-last:justify; 是針對(duì)IE瀏覽器的(雖然測(cè)試的時(shí)候他也沒(méi)生效吧)。
2、如果按照上面的偽元素方法在chrome中使用的話是可以生效的,但是在Firefox中又不生效了,是因?yàn)樵趂irefox中需要這樣寫(xiě)
你 好 世 界
也就是每個(gè)字中間需要打上空格如果直接寫(xiě) “你好世界” 也是不生效的(當(dāng)時(shí)搞得人是一頭霧水啊),所以還是建議在chrome中也可以使用中間打上空格的這樣 Chrome,Firefox,IE 都可以同時(shí)生效。
這個(gè)問(wèn)題也是我找到生效的樣式看代碼推理來(lái)的,如果哪位大神有發(fā)現(xiàn)我的原理是錯(cuò)誤的,希望可以指正并一起交流。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/112573.html
摘要:方法一利用屬性和參考熱門(mén)搜索電視機(jī)性感漂亮高跟鞋手機(jī)對(duì)齊牛仔褲小家碧玉家居這個(gè)值是看最長(zhǎng)能顯示幾個(gè)文字,如,則為如果需要個(gè)字兩端對(duì)齊,則為這里是同上如果需要個(gè)字兩端對(duì)齊,則為這里是同上方法二利用透明字占 方法一:利用letter-spacing屬性和em 參考:https://blog.csdn.net/muyutin... html 熱門(mén)搜索 電視機(jī) 性感漂亮 ...
摘要:方法一利用屬性和參考熱門(mén)搜索電視機(jī)性感漂亮高跟鞋手機(jī)對(duì)齊牛仔褲小家碧玉家居這個(gè)值是看最長(zhǎng)能顯示幾個(gè)文字,如,則為如果需要個(gè)字兩端對(duì)齊,則為這里是同上如果需要個(gè)字兩端對(duì)齊,則為這里是同上方法二利用透明字占 方法一:利用letter-spacing屬性和em 參考:https://blog.csdn.net/muyutin... html 熱門(mén)搜索 電視機(jī) 性感漂亮 ...
摘要:今天在做項(xiàng)目的時(shí)候碰到這個(gè)問(wèn)題右側(cè)紅線內(nèi)的小標(biāo)題單行兩端對(duì)齊。兩端對(duì)齊的屬性我們知道是,但是這個(gè)屬性有它的局限性只能為或多行文字才能實(shí)現(xiàn)兩端對(duì)齊。也就是說(shuō),在現(xiàn)在的情況下,小標(biāo)題的單行文字僅僅使用是實(shí)現(xiàn)不了兩端對(duì)齊的。 今天在做項(xiàng)目的時(shí)候碰到這個(gè)問(wèn)題:右側(cè)紅線內(nèi)的小標(biāo)題單行兩端對(duì)齊。 showImg(https://segmentfault.com/img/bVQv1a?w=319&h...
摘要:后面查閱資料發(fā)現(xiàn)可以實(shí)現(xiàn)最后一行兩端對(duì)齊,但似乎兼容性很差不支持最近的項(xiàng)目遇到了這樣的需求:(要求標(biāo)題部分不管文字多少,都必須兩端對(duì)齊) ? 如下圖: 當(dāng)時(shí)也沒(méi)有多想直接使用‘ ’進(jìn)行代替,畢竟產(chǎn)品同學(xué)想快一點(diǎn)看到效果,不敢怠慢!不過(guò)到第二個(gè)頁(yè)面就傻眼了。 ? 如圖: 這很明顯‘ ’已經(jīng)無(wú)法滿足我了,只好上 。 這里簡(jiǎn)單說(shuō)下幾種空格的區(qū)別: ? ? ? 半角...
摘要:屬性指定了盒的區(qū)的寬度。簡(jiǎn)寫(xiě)屬性一次性設(shè)置四周的,而其它屬性只設(shè)置它們各側(cè)的。 margin屬性指定了盒的margin區(qū)的寬度。margin簡(jiǎn)寫(xiě)屬性一次性設(shè)置四周的margin,而其它margin屬性只設(shè)置它們各側(cè)的。這些屬性適用于所有元素,但非替換行內(nèi)元素上的豎直margin將不會(huì)產(chǎn)生任何效果 margin與容器尺寸 margin與可視尺寸 margin與可視尺寸 只適用于沒(méi)有設(shè)定...
閱讀 2508·2021-11-15 11:38
閱讀 1957·2021-11-05 09:37
閱讀 2277·2021-10-08 10:12
閱讀 2815·2019-08-30 15:55
閱讀 2116·2019-08-30 15:52
閱讀 1230·2019-08-29 13:24
閱讀 469·2019-08-26 18:27
閱讀 1479·2019-08-26 18:27