css透视效果的实现方法
2019-08-14 09:39:23来源:爱站网 阅读 ()
一说到css透视效果相信不少朋友们就会想到添加阴影效果的方法来实现,但是用多个div通过偏移来实现并不是非常的理想,那么有没有什么更好的css透视效果的实现方法呢?
添加阴影效果是用多个div通过偏移来实现,但这需要很多 div,不够理想。随后,我想到css的一个属性:border,在border相连接处可以产生对角线效果。这样用两个div就可以实现,我们先看看 最终效果 ,然后再分析实现过程。
首先,我们看看border如何生成的对角线效果,在你的html的头部增加以下代码,你就会看到 这样的效果 。
.border{width:0;height:0;border-width:50px;border-color:#f00 #0f0 #00f #000;border-style:solid;}
有了上面的基础,我们就可以用两个额外的div来实现透视效果。
一、html代码如下:
<div class="perspective-outer">
?<div class="perspective-r"></div>
?<div class="perspective-b"></div>
?<div class="perspective-inner">透视效果元素</div>
</div>
二、Css代码:
.perspective-outer{
?position:relative;
?width:170px;/*要实现透视效果元素的宽度+透视距离*/
?height:140px;/*要实现透视效果元素的高度+透视距离*/
}
.perspective-inner{
?border:1px solid #f60;
?height:118px;
?width:148px;
?background-color:#fff;
}
.perspective-r,
.perspective-b{
?position:absolute;
?width:0;
?height:0;
}
.perspective-r{
?right:0;
?height:100px;/*要实现透视效果元素的高度(120px) - (border-top:20px)*/
?border-left:20px solid #000;/*右边透视距离*/
?border-top:20px solid #fff;/*下边透视距离*/
}
.perspective-b{
?bottom:0;
?width:150px;/*最外元素的宽度(170px) - border-left*/
?border-left:20px solid #fff;
?border-top:20px solid #000;
}
.perspective-outer定义高度和宽度,并相对定位,确保右边和下边的透视区域能定位的相应的位置,高度值和宽度值为要实现透视效果元素的高度加上相应的透视距离。.perspective-r只需设置高度值,其值为.perspective-outer的高度减去border-top,.perspective-b只需设置宽度值,其值为.perspective-outer的宽度减去border-left。.perspective-r的border-top和.perspective-b的border-left的width值决定透视角度。.perspective-r的border-left和.perspective-b的border-top的width值 决定透视距离。其中.perspective-r的border-top和.perspective-b的border-left的color为父元素的背景颜色,我这里的测试页面父元素为body,所以为白色。
三、后记
本文介绍的是css透视效果的实现方法,我们就不去讨论这种方法的实用性究竟有多大,但是至少可以给我们一种解决问题的思路。
原文链接:https://js.aizhan.com/web_authoring/css/6957.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- DIV居中的经典方法 2020-06-13
- CSS中的float和margin的混合使用 2020-06-11
- Html/css 列表项 区分列表首尾 2020-06-11
- css与javascript重难点,学前端,基础不好一切白费! 2020-06-11
- ie8下透明度处理 2020-06-11
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash