狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

【JavaScript】巧用before和after偽元素制作動(dòng)畫特效

admin
2023年7月7日 10:52 本文熱度 1063

為什么要整理這篇文章,是因?yàn)樽罱粋€(gè)項(xiàng)目用到了:before:after這兩個(gè)偽元素,結(jié)合css3transform相關(guān)屬性實(shí)現(xiàn)鼠標(biāo)懸停在圖片上出現(xiàn)邊框線條動(dòng)畫特效。在CSS 中:before 和 :after這兩個(gè)偽類元素說(shuō)不上常用 ,只是偶爾會(huì)被人用來(lái)添加些自定義格式什么的,但是它們的功用不僅于此。接下來(lái)就為大家介紹這兩個(gè)偽類元素。

一、基本概念

1.他們都是CSS偽元素,與:hover/:active等偽類不一樣。
2.:before:after偽元素是在CSS2中提出來(lái)的,所以兼容性可能到IE8了。
3.::before::afterCSS3中的寫法,為了將偽類和偽元素區(qū)分開(kāi)。但是平時(shí)為了兼容性,還是會(huì)用一個(gè)冒號(hào)的寫法。

二、基本用法

p:after{}
img:before{}

這兩個(gè)偽類下特有的屬性 content ,用于在 CSS 渲染中向元素邏輯上的頭部或尾部添加內(nèi)容。注意這些添加不會(huì)改變文檔內(nèi)容,不會(huì)出現(xiàn)在 DOM 中,不可復(fù)制,僅僅是在 CSS 渲染層加入。比較有用的是以下幾個(gè)值:

[String] – 使用引號(hào)包括一段字符串,將會(huì)向元素內(nèi)容中添加字符串。示例: 

a:after { content: "↗"; }

attr() – 調(diào)用當(dāng)前元素的屬性,可以方便的比如將圖片的 Alt 提示文字或者鏈接的 Href 地址顯示出來(lái)。示例:

a:after { content:"(" attr(href) ")"; }

url() / uri() – 用于引用媒體文件。示例: 

h1::before { content: url(logo.png); }

counter() – 調(diào)用計(jì)數(shù)器,可以不使用列表元素實(shí)現(xiàn)序號(hào)功能。具體請(qǐng)參見(jiàn) counter-increment 和 counter-reset 屬性的用法。示例:

h2:before { counter-increment: chapter; content: "Chapter " counter(chapter) ". " }

三、進(jìn)階用法

清除浮動(dòng)是一個(gè)時(shí)常會(huì)遇到的問(wèn)題,不少人的解決辦法是添加一個(gè)空的 div 應(yīng)用 clear:both; 屬性。現(xiàn)在,無(wú)需增加沒(méi)有意義的元素,僅需要以下樣式即可在元素尾部自動(dòng)清除浮動(dòng):

.clear-fix { *overflow: hidden; *zoom: 1; }
.clear-fix:after { display: table; content: ""; width: 0; clear: both; }

制作三角的方法:

我們?cè)趯懥奶鞖馀菪Ч麜r(shí)會(huì)用到偽類元素

.c-main:before{
    content: '';
    border-top: 9px solid transparent;/*方框上部分背景顏色為透明*/
    border-bottom: 9px solid transparent;/*方框下部分背景為透明*/
    border-right: 9px solid #eee;/*箭頭背景顏色*/
    position: absolute;/*絕對(duì)定位1*/
    top: 25px;/*距離頂部位置偏移量2*/
    left: -9px;/*距離左邊位置偏移量3*/ /*123都是控制顯示位置的*/
}
 .c-main:after{
    content: '';
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-right: 7px solid #fbfdfb;/*箭頭背景顏色,覆蓋前面的#eee顏色,使其顏色與整體顏色一致*/
    position: absolute;
    top: 27px;
    left: -7px;
}

定位都是其次的,主要是看border設(shè)置。一邊有顏色,其他三邊透明就可以實(shí)現(xiàn)。

四、特效妙用

除了簡(jiǎn)單的添加字符,配合 CSS 強(qiáng)大的定位和特效特性,完全可以達(dá)到給簡(jiǎn)單的元素另外附加最多兩個(gè)容器的效果。有一點(diǎn)需要注意的是,如果不需要內(nèi)容僅配合樣式屬性做出效果,內(nèi)容屬性也不能為空,即 content:”” 。否則,其他的樣式屬性一概不會(huì)生效。接下來(lái)我就以我最近項(xiàng)目中特效為例做演示。

鼠標(biāo)移上圖片懸停不懂出現(xiàn)邊框特效:

HTML代碼

<div class="strength grWidth hidden">
    <div class="homeTitle">
        <h2>前端博客</h2>
    </div>
    <ul class="strengthMain">
        <li><a href="https://mybj123.com/"><img src="xiank.jpg" alt="專業(yè)團(tuán)隊(duì)"><div class="font"><h3>碼云筆記</h3><p>歡迎訪問(wèn)碼云筆記,這里有豐富的前端知識(shí),但不局限于前端!</p></div></a></li>
    </ul>
</div>

CSS特效代碼

body,ol,ul,h1,h2,h3,h4,h5,h6,p,th,td,dl,dd,form,fieldset,legend,input,textarea,select{margin:0;padding:0}
fieldset,img{border:0;}
img{vertical-align:middle;}
ol,ul,li{list-style-type:none;}
table{border-collapse:collapse;border-spacing:0;}
button,input,select,textarea{font-size:13px;font-family:inherit;margin:0;outline:none;resize:none;border:none;}
.clearfix:after {clear: both; content: "."; display: block; height: 0; overflow: hidden; visibility: hidden; }
.clearfix { zoom:1; }
html{verflow:-Scroll;overflow-x:hidden;zoom:1;overflow-y:scroll;overflow:-moz-scrollbars-vertical;}
body{color:#1b1f2b;line-height:24px;font-family:"微軟雅黑","宋體", Arial, Helvetica, sans-serif; }
a{color:#1b1f2b;text-decoration:none;outline:none;blr:expression(this.onFocus=this.blur());}
a:hover{color:#e5000c;text-decoration:none;}:focus{outline:none;}
/* CSS活動(dòng)的公共樣式 */
.fl{float:left;}
.fr{float:right;}
.gr_center{text-align:center;}
.grWidth{width:1200px; margin:0 auto;}
.mb10{margin-bottom:10px;}
.mb15{margin-bottom:15px;}
.center{text-align:center;}
.hidden{overflow:hidden;}
.nor{font-weight:normal;}
.homeTitle {
text-align: center;
margin-bottom: 35px;
text-transform: uppercase;
line-height: 40px;
}
.homeTitle h2 {
font-size: 36px;
color: #FF0000;
font-weight: normal;
}
.strength {
padding-top: 60px;
}
.strengthMain {
height: ;
overflow: hidden;
}
.strengthMain li {
float: left;
width: 600px;
height: 330px;
overflow: hidden;
background: #000;
position: relative;
}
.strengthMain li img {
width: 600px;
height: 330px;
transition: all .5s;
opacity: 0.4;
filter: alpha(opacity=40);
}
.strengthMain li .font {
width: 600px;
height: 205px;
top: 0;
left: 0;
position: absolute;
color: #fff;
text-align: center;
font-size: 16px;
padding-top: 125px;
}
.strengthMain li .font h3 {
font-size: 36px;
color: #fff;
font-weight: normal;
margin-bottom: 20px;
line-height: 36px;
}
.strengthMain li:hover img {
transform: scale(1.05, 1.05);
}
.strengthMain li .font::before,
.strengthMain li .font::after {
position: absolute;
content: '';
opacity: 0;
transition: all 0.5s;
}
.strengthMain li .font::before {
top: 25px;
right: 15px;
bottom: 25px;
left: 15px;
border-top: 1px solid #fff;
border-bottom: 1px solid #fff;
transform: scale(0, 1);
-webkit-transform-origin: 0 0;
transform-origin: 0 0
}
.strengthMain li .font::after {
top: 15px;
right: 25px;
bottom: 15px;
left: 25px;
border-right: 1px solid #fff;
border-left: 1px solid #fff;
transform: scale(1, 0);
transform-origin: 100% 0;
}
.strengthMain li:hover .font::before,
.strengthMain li:hover .font::after {
opacity: 1;
transform: scale(1);
transition: all 0.5s;
}

結(jié)束語(yǔ)

以上代碼親測(cè)可用,用:before 和:after偽類結(jié)合更多CSS3強(qiáng)大的特性,還可以完成非常多有意思的特效和 Hack ,這里僅是拋磚引玉,更多特效還需你去實(shí)現(xiàn),更多精彩內(nèi)容持續(xù)更新,感謝閱讀!


該文章在 2023/7/7 10:52:53 編輯過(guò)
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved