99久久精品国产片-99久久精品国产免费-99久久精品国产麻豆-99久久精品国产国产毛片-99久久精品国产高清一区二区-99久久精品费精品国产一区二区

純CSS實現“文本溢出截斷省略”的幾種方法

2020-3-2    seo達人

在我們的日常開發工作中,文本溢出截斷省略是很常見的一種需考慮的業務場景細節。看上去 “稀松平常” ,但在實現上卻有不同的區分,是單行截斷還是多行截斷?多行的截斷判斷是基于行數還是基于高度?這些問題之下,都有哪些實現方案?他們之間的差異性和場景適應性又是如何?



一般來說,在做這樣文字截斷效果時我們更多是希望:



兼容性好,對各大主流瀏覽器有好的支持

響應式截斷,根據不同寬度做出調整

文本超出范圍才顯示省略號,否則不顯示省略號

省略號位置顯示剛好

基于上述的準則,下面我們通過編碼實踐,給出一些答案。



單行文本溢出省略

核心 CSS 語句



overflow: hidden;(文字長度超出限定寬度,則隱藏超出的內容)

white-space: nowrap;(設置文字在一行顯示,不能換行)

text-overflow: ellipsis;(規定當文本溢出時,顯示省略符號來代表被修剪的文本)

優點



兼容性好,對各大主流瀏覽器有好的支持

響應式截斷,根據不同寬度做出調整

文本溢出范圍才顯示省略號,否則不顯示省略號

省略號位置顯示剛好

短板



只支持單行文本截斷,并不支持多行

適用場景



適用于單行文本溢出顯示省略號的情況

Demo



<div class="demo">

      床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光

</div>



.demo {

  white-space: nowrap;

  overflow: hidden;

  text-overflow: ellipsis;

}







多行文本溢出省略(-webkit-line-clamp)

核心 CSS 語句



overflow: hidden;(文本溢出限定的寬度就隱藏內容)

-webkit-line-clamp: 2;(用來限制在一個塊元素顯示的文本的行數, 2 表示最多顯示 2 行。 為了實現該效果,它需要組合其他的WebKit屬性)

display: -webkit-box;(和 -webkit-line-clamp: 2;結合使用,將對象作為彈性伸縮盒子模型顯示 )

-webkit-box-orient: vertical;(和 -webkit-line-clamp: 2;結合使用 ,設置或檢索伸縮盒對象的子元素的排列方式 )

text-overflow: ellipsis;(多行文本的情況下,用省略號“…”隱藏溢出范圍的文本)

優點



響應式截斷,根據不同寬度做出調整

文本溢出范圍才顯示省略號,否則不顯示省略號

瀏覽器原生實現,所以省略號位置顯示剛好

短板



兼容性一般: -webkit-line-clamp 屬性只有 WebKit 內核的瀏覽器才支持





適用場景



多適用于移動端頁面,因為移動設備瀏覽器更多是基于 WebKit 內核

Demo



<div class="demo">

      床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光

</div>



.demo {

  display: -webkit-box;

  overflow: hidden;

  -webkit-line-clamp: 2;

  -webkit-box-orient: vertical;

}









多行文本溢出省略(偽元素 + 定位)

核心 CSS 語句



position: relative; (為偽元素絕對定位)

overflow: hidden; (文本溢出限定的寬度就隱藏內容)

position: absolute;(給省略號絕對定位)

line-height: 18px; (結合元素高度,高度固定的情況下,設定行高, 控制顯示行數)

height: 36px; (設定當前元素高度)

::after {} (設置省略號樣式)

word-break: break-all; (如果文本中有英文,可以使一個單詞能夠在換行時進行拆分)

優點



兼容性好,對各大主流瀏覽器有好的支持

響應式截斷,根據不同寬度做出調整

短板



無法識別文字的長短,無論文本是否溢出范圍,一直顯示省略號

省略號顯示可能不會剛剛好,有時會遮住一半文字,跟文字沒有貼合的很緊密

適用場景



文字內容較多,確定文字內容一定會超過容器的

Demo



<div class="demo">

      床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光

</div>

1

2

3

.demo {

    position: relative;

    line-height: 18px;

    height: 36px;

    overflow: hidden;

    word-break: break-all;

}

.demo::after {

    content:"...";

    font-weight:bold;

    position:absolute;

    bottom:0;

    right:0;

    padding:0 20px 1px 45px;

    

    / 為了展示效果更好 /

    background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), to(white), color-stop(50%, white));

    background: -moz-linear-gradient(to right, rgba(255, 255, 255, 0), white 50%, white);

    background: -o-linear-gradient(to right, rgba(255, 255, 255, 0), white 50%, white);

    background: -ms-linear-gradient(to right, rgba(255, 255, 255, 0), white 50%, white);

    background: linear-gradient(to right, rgba(255, 255, 255, 0), white 50%, white);

}



多行文本溢出省略(Float)

核心 CSS 語句



line-height: 20px;(結合元素高度,高度固定的情況下,設定行高, 控制顯示行數)

overflow: hidden;(文本溢出限定的寬度就隱藏內容)

float: right/left;(利用元素浮動的特性實現)

position: relative;(根據自身位置移動省略號位置, 實現文本溢出顯示省略號效果)

word-break: break-all;(如果文本中有英文,可以使一個單詞能夠在換行時進行拆分)

優點



兼容性好,對各大主流瀏覽器有好的支持

響應式截斷,根據不同寬度做出調整

文本溢出范圍才顯示省略號,否則不顯示省略號

短板



省略號顯示可能不會剛剛好,有時會遮住一半文字,跟文字沒有貼合的很緊密

適用場景



文字內容較多,確定文字內容一定會超過容器的

Demo



<div class="demo">

      <div class="text">

        床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光床前明月光

      </div>

</div>



.demo {

  height: 40px;

  line-height: 20px;

  overflow: hidden;

}

.demo .text {

  float: right;

  margin-left: -5px;

  width: 100%;

  word-break: break-all;

}

.demo::before {

  float: left;

  width: 5px;

  content: "";

  height: 40px;

}

.demo::after {

  float: right;

  content: "...";

  height: 20px;

  line-height: 20px;

  padding-right: 5px;

  text-align: right;

  width: 3em;

  margin-left: -3em;

  position: relative;

  left: 100%;

  top: -20px;

  padding-right: 5px;

    

  / 為了展示效果更好 /

  background: -webkit-gradient(

    linear,

    left top,

    right top,

    from(rgba(255, 255, 255, 0)),

    to(white),

    color-stop(50%, white)

  );

  background: -moz-linear-gradient(

    to right,

    rgba(255, 255, 255, 0),

    white 50%,

    white

  );

  background: -o-linear-gradient(

    to right,

    rgba(255, 255, 255, 0),

    white 50%,

    white

  );

  background: -ms-linear-gradient(

    to right,

    rgba(255, 255, 255, 0),

    white 50%,

    white

  );

  background: linear-gradient(

    to right,

    rgba(255, 255, 255, 0),

    white 50%,

    white

  );

}


日歷

鏈接

個人資料

藍藍設計的小編 http://www.lapeinture.cn

存檔

欧美日本免费| 久久国产精品自线拍免费| 久久久久久久久综合影视网| 亚洲天堂在线播放| 精品久久久久久中文字幕2017| 麻豆午夜视频| 国产不卡在线观看| 久久福利影视| 一级女性全黄久久生活片| 国产视频一区二区在线观看| 中文字幕一区二区三区精彩视频| 国产视频一区二区在线观看| 99色视频在线观看| 国产精品自拍亚洲| 午夜在线亚洲| 二级特黄绝大片免费视频大片| 成人a大片高清在线观看| 日韩欧美一及在线播放| 国产不卡高清在线观看视频 | 毛片的网站| 91麻豆高清国产在线播放| 99久久精品国产国产毛片| 精品国产三级a∨在线观看| 精品久久久久久中文| 日本伦理网站| 999久久久免费精品国产牛牛| 韩国三级视频网站| 精品国产香蕉在线播出| 四虎久久精品国产| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 欧美激情一区二区三区在线播放| 黄视频网站在线观看| 日本特黄一级| 香蕉视频亚洲一级| 欧美日本国产| 欧美大片a一级毛片视频| 青青久久国产成人免费网站| 成人免费一级纶理片| 精品视频一区二区三区| 国产不卡在线观看视频| 国产视频网站在线观看| 久久福利影视| 成人高清视频在线观看| 一级女性大黄生活片免费| 午夜欧美成人久久久久久| 青青久热| 国产亚洲精品成人a在线| 中文字幕97| 欧美日本二区| 美女免费精品视频在线观看| 色综合久久久久综合体桃花网| 精品国产三级a∨在线观看| 亚洲女初尝黑人巨高清在线观看| 欧美激情一区二区三区在线 | 国产伦精品一区二区三区在线观看| 日本免费看视频| 国产一级生活片| 午夜激情视频在线播放| 精品久久久久久中文字幕2017| 国产a一级| 色综合久久天天综合| 日日夜夜婷婷| 日韩中文字幕在线播放| 亚洲天堂免费| 青草国产在线观看| 精品国产亚一区二区三区| 日韩一级黄色片| 韩国三级一区| 成人免费福利片在线观看| 青青青草视频在线观看| 国产激情一区二区三区| 国产韩国精品一区二区三区| 久久精品成人一区二区三区| 黄视频网站免费看| 九九精品影院| 日韩在线观看视频免费| 日韩综合| 国产精品免费久久| 日本免费乱理伦片在线观看2018| 国产麻豆精品高清在线播放| 国产高清在线精品一区a| 成人免费观看视频| 精品国产香蕉伊思人在线又爽又黄| 99久久精品国产麻豆| 日韩欧美一及在线播放| 夜夜操网| 日韩中文字幕一区| 精品国产亚一区二区三区| 精品久久久久久影院免费| 青青青草视频在线观看| 韩国三级视频网站| 99色视频在线观看| 国产亚洲免费观看| 精品视频在线观看免费| 午夜激情视频在线观看| 国产成a人片在线观看视频| a级毛片免费全部播放| 国产不卡精品一区二区三区| 精品国产一区二区三区精东影业| 成人高清视频免费观看| 青青青草影院| 欧美大片aaaa一级毛片| 97视频免费在线观看| 韩国毛片| 国产一区二区精品久久91| 欧美国产日韩久久久| 99热精品一区| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 久久精品店| 久久久久久久免费视频| 99色视频在线| 日韩一级黄色片| 精品国产亚洲一区二区三区| 欧美激情一区二区三区在线播放 | 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 99久久精品费精品国产一区二区| 尤物视频网站在线| 亚洲精品永久一区| 亚洲精品永久一区| 成人免费一级纶理片| 黄色免费三级| 日本伦理片网站| 久久国产一久久高清| 高清一级毛片一本到免费观看| 久久99爰这里有精品国产| 精品久久久久久免费影院| 久久精品成人一区二区三区| 黄视频网站在线看| 亚洲第一页色| 99色视频| 亚洲精品久久久中文字| 精品视频免费观看| 日本免费区| 国产不卡高清| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 成人免费网站久久久| 久久精品人人做人人爽97| 国产视频一区二区在线播放| 国产国语在线播放视频| 麻豆污视频| 国产91丝袜在线播放0| 午夜欧美成人香蕉剧场| 久久精品欧美一区二区| 九九精品在线| 香蕉视频亚洲一级| 夜夜操网| 国产一区二区精品在线观看| 成人免费网站久久久| 青青久久网| 国产一区精品| 一级毛片视频播放| 国产网站在线| 久久久成人网| 91麻豆精品国产综合久久久| 欧美爱色| 精品视频一区二区三区| 日本伦理片网站| 欧美一区二区三区在线观看| 成人高清视频在线观看| 日韩在线观看视频免费| 午夜精品国产自在现线拍| 日本在线不卡视频| 久久精品欧美一区二区| 国产不卡在线看| 麻豆污视频| 国产网站免费视频| 高清一级淫片a级中文字幕| 夜夜操网| 精品久久久久久影院免费| 美女被草网站| 沈樵在线观看福利| 国产精品免费精品自在线观看| 天堂网中文字幕| 国产伦精品一区二区三区无广告 | 欧美一级视| 欧美日本国产| 精品久久久久久免费影院| 高清一级毛片一本到免费观看| 国产麻豆精品免费视频| 午夜在线影院| 亚洲天堂在线播放| 99热精品一区| 可以免费在线看黄的网站| 一级女性全黄久久生活片| 欧美另类videosbestsex高清| 国产精品1024永久免费视频| 欧美爱爱网| 美女免费毛片| 国产韩国精品一区二区三区| 一级毛片视频免费| 999精品影视在线观看| 一本高清在线| 99久久网站| 欧美国产日韩精品| 一级女性全黄久久生活片| 日韩一级黄色大片| 国产成人精品一区二区视频| 日韩一级黄色大片| 国产美女在线一区二区三区| 青青久久精品|