首页 web前端 html教程 如何使用CSS3实现书页(书本)卷角效果_html/css_WEB-ITnose

如何使用CSS3实现书页(书本)卷角效果_html/css_WEB-ITnose

Jun 24, 2016 am 11:24 AM

我们有时候想在页面显示一个公告或用户提示信息。一个常用设计是使用书签形状。

我们可以给书签添加卷角效果,以使其更为逼真。所谓的“卷角”实际上可以用小角度倾斜的阴影效果来模拟。

用CSS3的伪元素实现这个效果很容易。


先给出一个实例,我们在WOW站点页面左边栏实现了如下的效果(红框内):



我们再来看看具体实现。

首先创建一个div元素容纳文本信息(可以包含更多元素),class取名为“狗耳朵”也就是卷角的意思:

<div class="dog-eared-tip">put your tips here</div>
登录后复制

然后编写如下的CSS代码:

.dog-eared-tip{    padding: 7.5px 5px 7.5px 20px;    background: #DEAA2F;    font-size: 13px;    position: absolute;    text-align: center;    width: 100%;    color: black;}.dog-eared_tip:before, .work_tip:after {    content: "\f0eb";    position: absolute;    z-index: -2;    -moz-transform: rotate(-3deg);    -webkit-transform: rotate(-3deg);    -o-transform: rotate(-3deg);    -ms-transform: rotate(-3deg);    transform: rotate(-3deg);    bottom: 15px;    box-shadow: 0 15px 10px rgba(0, 0, 0, 0.7);    height: 50%;    left: 10px;    max-height: 100px;    max-width: 300px;    width: 50%;}.dog-eared_tip:after {    -moz-transform: rotate(3deg);    -webkit-transform: rotate(3deg);    -o-transform: rotate(3deg);    -ms-transform: rotate(3deg);        transform: rotate(3deg);    left: auto;    right: 10px;}
登录后复制

上面的代码首先设置了div的常用样式如底色、字体、居中、边距等。

然后为该div的:before和:after伪元素设置框阴影(box-shadow)和小角度旋转(rotate方法),

并把before和after的位置放在div的底部,并且z序列为负数,这样的实际效果就是伪元素本身被div所遮挡,但是刚好使得其外围阴影部分露出底部。

注意,这里请记得不要给div设置overflow不可见的样式,否则阴影不可见。

基本上好了,还差最后一步,两边阴影的倾斜度在物理学上是对称的,所以我们还需要调整一下:after伪元素的倾斜角度(-3°调整为3°)。

这样:before对应于标签的左下边角,:after对应于标签的右下边角的卷曲阴影。

本例在IE11/Chrome/FF/Edge下可以工作。


by iefreer

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门文章

仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章

仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章标签

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

公众号网页更新缓存难题:如何避免版本更新后旧缓存影响用户体验? 公众号网页更新缓存难题:如何避免版本更新后旧缓存影响用户体验? Mar 04, 2025 pm 12:32 PM

公众号网页更新缓存难题:如何避免版本更新后旧缓存影响用户体验?

如何使用HTML5表单验证属性来验证用户输入? 如何使用HTML5表单验证属性来验证用户输入? Mar 17, 2025 pm 12:27 PM

如何使用HTML5表单验证属性来验证用户输入?

&lt; iframe&gt;的目的是什么。 标签?使用时的安全考虑是什么? &lt; iframe&gt;的目的是什么。 标签?使用时的安全考虑是什么? Mar 20, 2025 pm 06:05 PM

&lt; iframe&gt;的目的是什么。 标签?使用时的安全考虑是什么?

如何高效地在网页中为PNG图片添加描边效果? 如何高效地在网页中为PNG图片添加描边效果? Mar 04, 2025 pm 02:39 PM

如何高效地在网页中为PNG图片添加描边效果?

&lt; meter&gt;的目的是什么。 元素? &lt; meter&gt;的目的是什么。 元素? Mar 21, 2025 pm 12:35 PM

&lt; meter&gt;的目的是什么。 元素?

&lt; datalist&gt;的目的是什么。 元素? &lt; datalist&gt;的目的是什么。 元素? Mar 21, 2025 pm 12:33 PM

&lt; datalist&gt;的目的是什么。 元素?

使用IFRAME的安全性含义是什么?如何减轻它们? 使用IFRAME的安全性含义是什么?如何减轻它们? Mar 18, 2025 pm 02:51 PM

使用IFRAME的安全性含义是什么?如何减轻它们?

我如何使用html5&lt; meter&gt; 要在范围内显示数值数据的元素? 我如何使用html5&lt; meter&gt; 要在范围内显示数值数据的元素? Mar 12, 2025 pm 04:08 PM

我如何使用html5&lt; meter&gt; 要在范围内显示数值数据的元素?

See all articles