紅包特效是現(xiàn)在很多網(wǎng)站或APP都會使用的一種營銷手段,這里介紹如何使用CSS3實現(xiàn)紅包特效。
/* * 首先定義一個類名為"red-envelope"的元素,用來表示紅包 * 采用絕對定位,設(shè)置左右偏移量和高度以及背景顏色、圓角等樣式 */ .red-envelope { position: absolute; left: 50%; transform: translate(-50%); height: 50px; width: 100px; background-color: #f00; border-radius: 25px; z-index: 1; } /* * 定義".red-envelope:before"偽元素,用來表示紅包口的部分 * 采用絕對定位,設(shè)置寬高、背景顏色以及圓角等樣式 * 將其左上角對其到".red-envelope"元素的左下角,使之呈現(xiàn)出紅包口的形狀 */ .red-envelope:before { content: ""; position: absolute; bottom: 0; left: 0; height: 20px; width: 50px; background-color: #f00; border-top-right-radius: 20px; } /* * 在".red-envelope:before"偽元素里引入三個子元素,用來表示紅包口的排氣孔部分 * 三個子元素設(shè)置不同的寬高、背景顏色以及圓角等樣式 * 將三個子元素分別定位在":before"偽元素的上面,從左到右均勻分布 */ .red-envelope:before div:nth-child(1) { content: ""; position: absolute; top: -10px; left: 0; height: 20px; width: 20px; background-color: #fff; border-radius: 10px; } .red-envelope:before div:nth-child(2) { content: ""; position: absolute; top: -10px; left: 15px; height: 20px; width: 20px; background-color: #fff; border-radius: 10px; } .red-envelope:before div:nth-child(3) { content: ""; position: absolute; top: -10px; right: 0; height: 20px; width: 20px; background-color: #fff; border-radius: 10px; } /* * 最后,可以在".red-envelope"元素里加入一個數(shù)字,表示紅包里的金額 * 通過設(shè)置文字顏色、字體大小等樣式,以及使用flex布局讓其文字垂直水平居中 */ .red-envelope span { display: flex; justify-content: center; align-items: center; position: absolute; bottom: 0; left: 0; height: 100%; width: 100%; color: #fff; font-size: 20px; font-weight: bold; }
通過以上的CSS樣式定義,便可以實現(xiàn)一個帶有紅包口、氣孔的紅包特效,能夠視覺上吸引用戶的注意力,提高用戶對活動或商品等的關(guān)注度。同時也可以針對項目需求進(jìn)行樣式的調(diào)整,滿足不同場景下的效果展示。
上一篇append css
下一篇app css 對號