【收藏】會經(jīng)常用到的css小技巧

三角形
/** 正三角 */
.triangle {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 25px 40px 25px;
  border-color: transparent transparent rgb(245, 129, 127) transparent;
}
倒三角形
/** 倒三角 */
.triangle {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 40px 25px 0 25px;
  border-color:  rgb(245, 129, 127) transparent transparent transparent;
}
虛線效果
image.png
.dotted-line{
    border: 1px dashed transparent;
    background: linear-gradient(white,white) padding-box, repeating-linear-gradient(-45deg,#ccc 0, #ccc .25em,white 0,white .75em);
}

css自帶的border-style屬性 dotted/ dashed . 效果展示出來太密了亦镶,并不符合UI設(shè)計

具體的虛線的顏色和間距都可以通過repeating-linear-gradient生成的條紋背景去調(diào)整率触。

文本超出省略號

單行文本

image.png
.single-ellipsis{
  width: 500px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

多行文本

image.png
.multiline-ellipsis {
  display: -webkit-box;
  word-break: break-all;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4; //需要顯示的行數(shù)
  overflow: hidden;
  text-overflow: ellipsis;
}

擴展: -webkit-line-clamp 是一個 不規(guī)范的屬性(unsupported WebKit property),它沒有出現(xiàn)在 CSS 規(guī)范草案中掏呼。

為了實現(xiàn)該效果,它需要組合其他外來的WebKit屬性计技。常見結(jié)合屬性:

  • display: -webkit-box; 必須結(jié)合的屬性 涌攻,將對象作為彈性伸縮盒子模型顯示 。
  • -webkit-box-orient 必須結(jié)合的屬性 怀各,設(shè)置或檢索伸縮盒對象的子元素的排列方式 倔韭。
  • text-overflow,可以用來多行文本的情況下瓢对,用省略號“...”隱藏超出范圍的文本 寿酌。

瀏覽器兼容性:


image.png
時間軸
image.png

html結(jié)構(gòu)

<div class="timeline-content">
  <div v-for='(item, index) in timeLine' :key='index' class="time-line">
    <div :class="`state-${item.state} state-icon`"></div>
    <div class="timeline-title">{{item.title}}</div>
  </div>
</div>

css樣式

/** 時間軸 */
.timeline-content{
  display: flex;
  .time-line{
    padding: 10px 10px 10px 20px;
    position: relative;
    &::before{
      content: '';
      height: 1px;
      width: calc(100% - 34px);
      background: #EBEBEB;
      position: absolute;
      left: 24px;
      top: 0;
    }
  }
  .state-icon{
    width: 20px;
    height: 20px;
    position: absolute;
    top: -12px;
    left: 0;
  }
  .state-1{
    background: url('https://static.daojia.com/assets/project/tosimple-pic/fen-zu-7-copy-6bei-fen_1589266208621.png') no-repeat;
    background-size: cover;
  }
  .state-2{
    background: url('https://static.daojia.com/assets/project/tosimple-pic/12_1589266226040.png') no-repeat;
    background-size: cover;
  }
  .state-3{
    background: url('https://static.daojia.com/assets/project/tosimple-pic/fen-zu-7-copy-3_1589266140087.png') no-repeat;
    background-size: cover;
  }
}

calc()函數(shù) 用來計算css屬性的值。
用法

/** 屬性:calc(expression)*/
寬度:calc(100% - 34px);

除了減法硕蛹,還可以用 +(加) 醇疼,/(除) 硕并, *(乘)。但要注意的是:

注意: +和-運算符在運算符和值之間需要一個空格秧荆。例如倔毙,它將被calc(50% -8px)解釋為百分比,后跟負像素長度乙濒。只有在-到8px之間有空格時陕赃,才可以正確減法:calc(50% - 8px) 空格在乘法或除法中不起作用,但建議閱讀時要注意颁股。

瀏覽器兼容性:


image.png
滾動條
image.png
.scroll-container {
 height: 250px;
 border: 1px solid #ddd;
 padding: 15px;
 overflow: auto;
 .row {
   margin: 0;
   line-height: 1.5;
 }

 &::-webkit-scrollbar {
   width: 8px;
   background: white;
 }
 &::-webkit-scrollbar-corner, /* 滾動條角落 */
 &::-webkit-scrollbar-thumb,
 &::-webkit-scrollbar-track {
   border-radius: 4px;
 }
 &::-webkit-scrollbar-corner,
 &::-webkit-scrollbar-track {
   /* 滾動條軌道 */
   background-color: rgba(180, 160, 120, 0.1);
   box-shadow: inset 0 0 1px rgba(180, 160, 120, 0.5);
 }
 &::-webkit-scrollbar-thumb {
   /* 滾動條手柄 */
   background-color: #00adb5;
 }
}

卡券效果
image.png
.coupon{
  width: 300px;
  height: 100px;
  position: relative;
  background: radial-gradient(circle at right bottom, transparent 10px, #ffffff 0) top right /50% 51px no-repeat,
    radial-gradient(circle at left bottom, transparent 10px, #ffffff 0) top left / 50% 51px no-repeat,
    radial-gradient(circle at right top, transparent 10px, #ffffff 0) bottom right / 50% 51px no-repeat,
    radial-gradient(circle at left top, transparent 10px, #ffffff 0) bottom left / 50% 51px no-repeat;
  filter: drop-shadow(2px 2px 2px rgba(0,0,0,.2));
}

陰影效果


image.png
// 三角形陰影
.shadow-triangle{
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 50px 50px 50px;
    border-color: transparent transparent rgb(245, 129, 127) transparent;
    filter:drop-shadow(10px 0px 10px  rgba(238, 125, 55,0.5));
}

// 缺圓投影
.circle-square{
    width:100px;
    height:50px;
    line-height: 50px;
    background: radial-gradient(circle at bottom right, transparent 20px, rgb(245, 129, 127) 15px);
    filter: drop-shadow(2px 2px 2px rgba(238, 132, 66, 0.9));
}

// 氣泡陰影
.tip {
    width: 100px;
    height: 30px;
    line-height: 30px;
    border: 1px solid rgb(245, 129, 127);
    border-radius: 4px;
    position: relative;
    background-color: #fff;
    filter: drop-shadow(0px 2px 4px rgba(245, 129, 127, 0.9));
    &::before {
      content: "";
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 0 10px 10px 10px;
      border-color: transparent transparent #fff transparent;
      position: absolute;
      top: -10px;
      left: 0;
      right: 0;
      margin: auto;
      z-index: 2;
    }
    &::after {
      content: "";
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 0 10px 10px 10px;
      border-color: transparent transparent rgb(245, 129, 127) transparent;
      position: absolute;
      top: -11px;
      left: 0;
      right: 0;
      margin: auto;
      z-index: 1;
    }
}

等高布局
image.png

沒有什么是一個flex搞不定的么库。

.parent{
    display: flex;
 }

如果一行放不下,可以折行甘有。

.parent{
  flex-wrap: wrap;
}

總結(jié)
上面是一些靜態(tài)的樣式廊散,有的會經(jīng)常用到,特此筆錄一下梧疲。

感謝博主分享(轉(zhuǎn)載):https://juejin.im/post/5ed3c27ee51d455f9a6368c9

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市运准,隨后出現(xiàn)的幾起案子幌氮,更是在濱河造成了極大的恐慌,老刑警劉巖胁澳,帶你破解...
    沈念sama閱讀 221,548評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件该互,死亡現(xiàn)場離奇詭異,居然都是意外死亡韭畸,警方通過查閱死者的電腦和手機宇智,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,497評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來胰丁,“玉大人随橘,你說我怎么就攤上這事〗跤梗” “怎么了机蔗?”我有些...
    開封第一講書人閱讀 167,990評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長甘萧。 經(jīng)常有香客問我萝嘁,道長,這世上最難降的妖魔是什么扬卷? 我笑而不...
    開封第一講書人閱讀 59,618評論 1 296
  • 正文 為了忘掉前任牙言,我火速辦了婚禮,結(jié)果婚禮上怪得,老公的妹妹穿的比我還像新娘咱枉。我一直安慰自己卑硫,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 68,618評論 6 397
  • 文/花漫 我一把揭開白布庞钢。 她就那樣靜靜地躺著拔恰,像睡著了一般。 火紅的嫁衣襯著肌膚如雪基括。 梳的紋絲不亂的頭發(fā)上颜懊,一...
    開封第一講書人閱讀 52,246評論 1 308
  • 那天,我揣著相機與錄音风皿,去河邊找鬼河爹。 笑死,一個胖子當(dāng)著我的面吹牛桐款,可吹牛的內(nèi)容都是我干的咸这。 我是一名探鬼主播,決...
    沈念sama閱讀 40,819評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼魔眨,長吁一口氣:“原來是場噩夢啊……” “哼媳维!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起遏暴,我...
    開封第一講書人閱讀 39,725評論 0 276
  • 序言:老撾萬榮一對情侶失蹤侄刽,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后朋凉,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體州丹,經(jīng)...
    沈念sama閱讀 46,268評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,356評論 3 340
  • 正文 我和宋清朗相戀三年杂彭,在試婚紗的時候發(fā)現(xiàn)自己被綠了墓毒。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,488評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡亲怠,死狀恐怖所计,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情团秽,我是刑警寧澤醉箕,帶...
    沈念sama閱讀 36,181評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站徙垫,受9級特大地震影響讥裤,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜姻报,卻給世界環(huán)境...
    茶點故事閱讀 41,862評論 3 333
  • 文/蒙蒙 一己英、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧吴旋,春花似錦损肛、人聲如沸厢破。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,331評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽摩泪。三九已至,卻和暖如春劫谅,著一層夾襖步出監(jiān)牢的瞬間见坑,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,445評論 1 272
  • 我被黑心中介騙來泰國打工捏检, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留荞驴,地道東北人。 一個月前我還...
    沈念sama閱讀 48,897評論 3 376
  • 正文 我出身青樓贯城,卻偏偏與公主長得像熊楼,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子能犯,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,500評論 2 359