国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > CSS > 正文

CSS實現梯形標簽頁的方法

2024-07-11 08:58:37
字體:
來源:轉載
供稿:網友

在web設計中,梯形標簽頁是很常見的一種形式,但是梯形又是一種很難實現的樣式,很多開發者會直接用梯形背景圖片來生成效果,但是采用背景圖片的方式產生了額外的http請求,并不是一種非常理想的方式,這里筆者為大家帶來一種直接用css來實現梯形效果的方法。
 

以一個簡單的div為例:

<div class="div">這是一個梯形</div>
.div{    position: relative;    display: inline-block;    padding: .5em 1em .35em;    color: white;}.div::before{    content: ''; /*用偽元素來生成一個矩形*/    position: absolute;    top: 0;    right: 0;    bottom: 0;    left: 0;    z-index: -1;    background: #58a;    transform: scaleY(1.3) perspective(.5em) rotateX(5deg);    transform-origin: bottom;}

如果我們直接對元素結點進行3D變形,那么元素內的內容也會產生變形,這是一種不理想的效果,所以這里利用偽元素,將變形效果作用到偽元素上,就可以實現理想的效果。在這里,變形的時候,我們固定住了底部,它的高度是會發生變化的,所以通過scaleY(1.3)來補足它在高度上的縮水。讀者可以去掉scaleY(1.3)和transform-origin來對比查看效果,這里筆者將兩種結果都展示出來:

這是沒有scaleY和transform-origin產生的結果 
這是上述代碼產生的樣式結果 

這是沒有scaleY和transform-origin產生的結果

這是上述代碼產生的樣式結果

既然一個梯形標簽產生了,那我們就可以進一步生成多個標簽頁,這里筆者為大家帶來一個簡單的示例。

<nav>    <a href="#">Home</a>    <a href="#">Projects</a>    <a href="#">About</a></nav>
nav>a{    position: relative;    display: inline-block;    padding: .3em 1em 0;}nav>a::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;    transform: perspective(.5em) rotateX(5deg);    transform-origin: bottom;}

產生的效果圖是這樣的:

這里寫圖片描述 

讀者可以改變transform-origin的屬性為:left,right,bottom left, left right等查看不同的效果,這里筆者為大家展示幾種效果:

這里寫圖片描述 
這里寫圖片描述 
這里寫圖片描述 
這里寫圖片描述 

總結

以上所述是小編給大家介紹的CSS實現梯形標簽頁的核心代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 富平县| 昌图县| 静安区| 肃北| 南川市| 清新县| 茌平县| 芒康县| 闽侯县| 宕昌县| 科尔| 新巴尔虎右旗| 温宿县| 玉门市| 来凤县| 石门县| 普兰店市| 甘孜| 五华县| 古交市| 遂溪县| 和林格尔县| 唐河县| 广河县| 景宁| 太和县| 钦州市| 全南县| 白银市| 成武县| 和平县| 东乡县| 英山县| 富民县| 峨眉山市| 马公市| 霞浦县| 贡觉县| 新乡市| 响水县| 福建省|