嫩草影院久久99_老司机午夜网站国内精品久久久久久久久_久久夜色精品国产_国产一级做a爰片久久毛片

純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://m.sdgs6788.com

存檔

嫩草影院久久99_老司机午夜网站国内精品久久久久久久久_久久夜色精品国产_国产一级做a爰片久久毛片
<em id="09ttv"></em>
    <sup id="09ttv"><pre id="09ttv"></pre></sup>
    <dd id="09ttv"></dd>

        • 国产精品久久久久高潮| 亚洲欧美日韩国产成人| 久色成人在线| 久久成人在线| 久久永久免费| 欧美极品欧美精品欧美视频| 欧美α欧美αv大片| 欧美日韩国产成人在线免费| 欧美日韩三区| 国产精品国产精品| 国产视频久久久久| 在线视频国内自拍亚洲视频| 一本到12不卡视频在线dvd| 亚洲一区免费网站| 久久香蕉精品| 亚洲欧洲一区二区在线观看| 亚洲精品一区二区三| 亚洲影院一区| 久久精品人人做人人爽| 欧美精品一区二区蜜臀亚洲| 国产精品久久久久久久9999| 激情亚洲成人| 一区二区三区高清在线| 久久精品视频在线观看| 亚洲精品欧洲精品| 久久9热精品视频| 欧美日韩高清免费| 国产欧美va欧美不卡在线| 亚洲成色最大综合在线| 亚洲天堂视频在线观看| 久久综合九色综合欧美就去吻| 亚洲美女免费精品视频在线观看| 性欧美videos另类喷潮| 免费日本视频一区| 国产精品乱码| 日韩午夜在线播放| 老司机凹凸av亚洲导航| 亚洲一区二区三区四区在线观看| 欧美高清影院| 精品动漫3d一区二区三区| 午夜激情综合网| 亚洲精品小视频| 免费久久99精品国产| 国产一区二区三区久久久| 亚洲一区日韩在线| 亚洲人永久免费| 免费黄网站欧美| 亚洲高清av在线| 久久综合九九| 久久久综合网| 激情五月***国产精品| 久久狠狠一本精品综合网| 亚洲毛片在线免费观看| 男人的天堂亚洲在线| 国产亚洲一区二区三区在线播放| 亚洲女人小视频在线观看| 9久草视频在线视频精品| 欧美日本一区| 中文久久乱码一区二区| 亚洲精品社区| 欧美日韩在线精品| 在线视频亚洲欧美| 99国产精品国产精品久久| 欧美日韩国产一区二区三区地区| 亚洲精品网站在线播放gif| 欧美顶级艳妇交换群宴| 米奇777超碰欧美日韩亚洲| 亚洲黑丝在线| 亚洲精品视频免费观看| 欧美日韩不卡一区| 一本一本久久a久久精品牛牛影视| 亚洲高清在线精品| 欧美日韩成人综合在线一区二区| 日韩视频在线一区| 中文无字幕一区二区三区| 国产精品一区二区在线| 欧美资源在线观看| 久久精品人人爽| 亚洲国产裸拍裸体视频在线观看乱了中文| 老司机午夜精品视频| 麻豆精品在线观看| 亚洲一区二区免费| 欧美专区在线| 亚洲精品1234| 亚洲一级高清| 国产亚洲欧洲| 狂野欧美激情性xxxx| 欧美99久久| 西西裸体人体做爰大胆久久久| 亚洲欧美日韩一区二区在线| 国产一区二区在线观看免费播放| 久久久国际精品| 欧美国产一区二区在线观看| 亚洲欧美综合精品久久成人| 久久精品一区二区三区四区| 亚洲国产成人av| 日韩视频免费观看高清在线视频| 国产伦精品一区二区三区四区免费 | 国产精品一区二区久激情瑜伽| 欧美一区二区三区婷婷月色| 久久久久久久网| 一区二区免费在线播放| 一本色道久久88综合日韩精品| 国产精品一区二区你懂得| 欧美国产91| 国产欧美亚洲日本| 亚洲三级影院| 亚洲激情av| 欧美亚洲日本一区| 一区二区精品在线| 免费在线国产精品| 久久精品视频在线| 国产精品h在线观看| 免费在线播放第一区高清av| 国产精品久久久一区麻豆最新章节| 欧美成人午夜77777| 国产精品一区二区久久久| 亚洲精品一区二区三区福利| 樱桃成人精品视频在线播放| 亚洲综合国产| 亚洲一区二区三区色| 欧美国产精品va在线观看| 免费成人黄色| 国内精品久久久久久久果冻传媒 | 久久爱91午夜羞羞| 香蕉亚洲视频| 国产精品v欧美精品∨日韩| 亚洲精品1区2区| 亚洲国产天堂久久综合| 久久九九电影| 蜜臀91精品一区二区三区| 国内成人精品一区| 久久久噜噜噜久噜久久| 老牛影视一区二区三区| 尤物精品在线| 久久久久网站| 久久人人97超碰精品888| 国产偷国产偷亚洲高清97cao | 欧美精品aa| 亚洲精品乱码| 正在播放欧美一区| 欧美日韩免费一区二区三区视频| 最近看过的日韩成人| 亚洲欧洲三级| 老鸭窝91久久精品色噜噜导演| 欧美大片18| 日韩一级片网址| 欧美日韩美女| 亚洲性图久久| 久久久久久电影| 亚洲国产精品久久久久婷婷884| 你懂的视频欧美| 亚洲欧洲偷拍精品| 一区二区三区精密机械公司 | 国产精品一卡二卡| 欧美一区二区性| 美女国产一区| aa级大片欧美三级| 国产精品亚洲产品| 欧美在线观看一区二区三区| 蜜臀91精品一区二区三区| 亚洲乱码国产乱码精品精98午夜| 欧美久久一区| 亚洲欧美日韩人成在线播放| 久久香蕉精品| 亚洲图中文字幕| 国产一区二区三区四区三区四| 久久久免费av| 日韩图片一区| 麻豆成人综合网| av成人免费在线观看| 国产伦精品一区二区三| 欧美国产91| 久久久久www| 一本到高清视频免费精品| 国内视频精品| 欧美麻豆久久久久久中文| 午夜久久资源| 亚洲日产国产精品| 久久大香伊蕉在人线观看热2| 在线精品视频免费观看| 欧美日韩一区免费| 久久亚洲精品网站| 亚洲欧美日韩中文视频| 亚洲日韩第九十九页| 久久综合九色综合欧美就去吻| 亚洲一级影院| 亚洲欧洲一区二区三区在线观看| 国产精品国产三级国产专播精品人| 欧美在线一二三| 亚洲综合精品四区| 99精品热6080yy久久 | 亚洲国产清纯| 国产日韩1区| 欧美日韩网站| 欧美激情精品久久久久久黑人| 久久久久在线观看| 性色一区二区三区| 亚洲综合大片69999| 99成人免费视频|