摘要:自適應(yīng)橢圓斜杠前為水平半徑,后為垂直半徑。和下特有的,用于在渲染中向元素邏輯上的頭部或尾部添加內(nèi)容。所以不要用或展示有實(shí)際意義的內(nèi)容,盡量使用它們顯示修飾性內(nèi)容,例如圖標(biāo)。和必須配合屬性來(lái)使用,用來(lái)定義插入的內(nèi)容,必須有值,至少是空。
自適應(yīng)橢圓
border-radius:50% / 50%;//斜杠前為水平半徑,后為垂直半徑。
background: #fb3; border-radius: 100% 0 0 100%/50%;
width: 200px; height: 100px; background: #fb3; border-radius: 100% 0 0 0;平行四邊形 方法一
#testdiv{ width: 100px; height: 30px; line-height: 30px; margin:0 auto; margin-top: 50px; background: #fb5; transform: skewX(-45deg); } #testdiv >div{ transform: skewX(45deg); text-align: center; }方法二(使用偽元素)
#testdiv{ width: 100px; height: 30px; line-height: 30px; margin:0 auto; margin-top: 50px; text-align: center; position: relative;//給宿主元素應(yīng)用 position: relative 樣式 } #testdiv::before{ /*為偽元素設(shè)置 position:absolute, 然后再把所有偏移量設(shè)置為零, 以便讓它在水平和垂直方向上都 被拉伸至宿主元素的尺寸*/ position: absolute; top: 0; right: 0; left: 0; bottom: 0; z-index: -1; background: #fb5; transform: skewX(-45deg); content: ""; }
*:
常見偽元素———::first-letter,::first-line,::before,::after,::selection。菱形
::before和::after下特有的content,用于在css渲染中向元素邏輯上的頭部或尾部添加內(nèi)容。
這些添加不會(huì)出現(xiàn)在DOM中,不會(huì)改變文檔內(nèi)容,不可復(fù)制,僅僅是在css渲染層加入。
所以不要用:before或:after展示有實(shí)際意義的內(nèi)容,盡量使用它們顯示修飾性內(nèi)容,例如圖標(biāo)。
舉例:網(wǎng)站有些聯(lián)系電話,希望在它們前加一個(gè)icon?,就可以使用:before偽元素。
::before和::after必須配合content屬性來(lái)使用,content用來(lái)定義插入的內(nèi)容,content必須有值,至少是空。
img{ clip-path: polygon(50% 0,100% 50%,50% 100%,0 50%);//創(chuàng)建多邊形函數(shù),參數(shù)為各個(gè)點(diǎn)坐標(biāo) transition: 1s clip-path; } img:hover{ clip-path: polygon(0 0,100% 0,100% 100%,0 100%);//覆蓋時(shí)變正方形 }切角效果
background: #fb3; background: linear-gradient(-135deg,transparent 15px,#fb3 0) top right, linear-gradient(135deg,transparent 15px,#fb3 0) top left, linear-gradient(-45deg,transparent 15px,#fb3 0) bottom right, linear-gradient(45deg,transparent 15px,#fb3 0) bottom left; background-size: 50% 50%; background-repeat: no-repeat;
background: #fb3; background: radial-gradient(circle at top right,transparent 15px,#fb3 0) top right, radial-gradient(circle at top left,transparent 15px,#fb3 0) top left, radial-gradient(circle at bottom right,transparent 15px,#fb3 0) bottom right, radial-gradient(circle at bottom left,transparent 15px,#fb3 0) bottom left; background-size: 50% 50%; background-repeat: no-repeat;梯形標(biāo)簽頁(yè)
#testdiv{ position: relative; display: inline-block; padding: .3em 1em 0; } #testdiv::before{ content:""; position: absolute; top: 0; right: 0; bottom:0; left: 0; z-index: -1; background: #ccc; background-image: linear-gradient(hsla(0,0%,100%,.6),hsla(0,0%,100%,0)); border: 1px solid rgba(0, 0, 0, .4); border-bottom: none; border-radius: .5em .5em 0 0; box-shadow: 0 .15em white inset; transform: perspective(.5em) rotateX(5deg); transform-origin: bottom;//當(dāng)它在 3D 空間中旋轉(zhuǎn)時(shí), 可以把它的底邊固定住 }簡(jiǎn)單的餅圖 基于transform的餅圖(動(dòng)畫版)
@keyframes spin{ to{ transform: rotate(.5turn); } } @keyframes bg{ 50%{ background: #655; } } #testdiv{ margin: 50px; width: 100px; height: 100px; border-radius: 50%; background: yellowgreen; background-image: linear-gradient(to right,transparent 50%,#655 0); } #testdiv::before{ content:""; display: block; margin-left: 50%; height: 100%; background-color: inherit; transform-origin: left; border-radius: 0 100% 100% 0 / 50%; animation: spin 3s linear infinite, bg 6s step-end infinite; }
*:用到CSS 3的animation 屬性。
多個(gè)比例不同的靜態(tài)餅圖@keyframes spin{ to{ transform: rotate(.5turn); } } @keyframes bg{ 50%{ background: #655; } } #testdiv{ margin: 50px; width: 100px; height: 100px; border-radius: 50%; background: yellowgreen; background-image: linear-gradient(to right,transparent 50%,#655 0); } #testdiv::before{ content:""; display: block; margin-left: 50%; height: 100%; background-color: inherit; transform-origin: left; border-radius: 0 100% 100% 0 / 50%; animation: spin 50s linear infinite, bg 100s step-end infinite; animation-play-state: paused; animation-delay: inherit;
SVG 方案
......
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/116785.html
摘要:把改成,就變成了這樣實(shí)現(xiàn)邊框內(nèi)圓角多重邊框還有下實(shí)現(xiàn)多重背景為某一層背景單獨(dú)設(shè)置類似這樣的屬性等等。裁切路徑方案這種方案,當(dāng)內(nèi)邊距不夠?qū)挄r(shí),會(huì)裁切掉文本。 自適應(yīng)的橢圓(border-radius的用法) 單獨(dú)指定水平和垂直半徑 長(zhǎng)寬固定的元素,可以通過(guò)指定寬高的一半,變?yōu)闄E圓形,格式為兩個(gè)值用/分開。 width: 100px; height: 80px; border-radi...
摘要:通過(guò)模糊來(lái)弱化背景和滾動(dòng)提示使用兩層背景,控制交互式的圖片對(duì)比控件范圍輸入控件方式書中有很詳細(xì)的解答提醒自己要回顧。 1. 第一章 css編碼技巧 第二章 邊框與背景 半透明邊框 hsla 多重邊框 box-shadow outline 靈活的背景定位 background-position css3該屬性可以指定偏移量,////bac...
摘要:但是根據(jù)本司機(jī)兩年的開發(fā)經(jīng)驗(yàn)來(lái)看,在實(shí)際開發(fā)中很少來(lái)使用這個(gè)單位。由于基本都是一些實(shí)用性的技巧,我就不一一列舉了,建議自讀。很好很實(shí)用的一本書。 第一章 引言 css編碼技巧 在引言中,作者提到使用em與inherit來(lái)實(shí)現(xiàn)css代碼的簡(jiǎn)潔與可維護(hù)性。但是根據(jù)本司機(jī)兩年的開發(fā)經(jīng)驗(yàn)來(lái)看,在實(shí)際開發(fā)中很少來(lái)使用em這個(gè)單位。如何用以及何時(shí)去使用,還是要根據(jù)實(shí)際開發(fā)需求來(lái)定吧,畢竟這兩個(gè)屬性...
摘要:本篇主要記錄揭秘一書中后面幾章的常用技巧。文字環(huán)繞的重點(diǎn)在于即文字圍繞著路徑來(lái)顯示。本篇主要記錄《CSS3揭秘》一書中后面幾章的常用技巧。 1、偽元素?fù)Q行 先看下HTML代碼,如下 當(dāng)愛的故事剩聽說(shuō) 我找不到你單純的面孔 默認(rèn)顯示效果: 一般情況下,我們喜歡直接在第一個(gè)span元素后面加個(gè)換行符,但是它對(duì)于語(yǔ)義來(lái)說(shuō)并不友好,或者將第一...
摘要:多重邊框的兩種實(shí)現(xiàn)方案以由逗號(hào)分隔的列表來(lái)描述一個(gè)或多個(gè)陰影效果。輪廓與邊框在以下幾個(gè)方面存在不同輪廓不占據(jù)空間,它們被描繪于內(nèi)容之上輪廓可以是非矩形的。是元素的輪廓,懸浮在元素邊框之上。也就是說(shuō),它們之間的顏色會(huì)繼承父元素的背景色。 多重邊框的兩種實(shí)現(xiàn)方案: border-shadow outline Mutiple border ...
閱讀 1865·2019-08-30 15:53
閱讀 3192·2019-08-30 15:44
閱讀 2806·2019-08-26 13:31
閱讀 1949·2019-08-26 12:10
閱讀 792·2019-08-26 11:01
閱讀 2120·2019-08-23 15:32
閱讀 1584·2019-08-23 13:43
閱讀 2529·2019-08-23 11:58