CSS3实战开发:手把手教大家折角效果实战开发

各位网友,大家好,我是陌上花会开,今天这篇文章,我将手把手教大家如何开发一套纯CSS的折角效果。一如往常,我不提供代码下载,但是我可以保证,只要将教程中的代码复制到本地,绝对百分百获得与我演示的效果一样,希望各位明白我的用意。

好了,直接开始今天的教程吧。首先,我先给大家演示一下今天实战案例的效果:

有人会说这是什么?这就是我们今天的实战开发,我将带领大家开发上图中的右上角折叠效果。

在我讲解完之前,有些人可能觉得很难,不可思议。我想跟你们说:真的so easy。下面就请跟着我的分解步骤一步步学习吧!

首先,我们先创建一块蓝色区域,代码如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-9">
<meta name="keywords" content="css,css3,实战互联网,教程">
<meta name="description" content="css3实现折角效果,折角效果,css3实战尽在实战互联网" >
<link rel="stylesheet" href="styles_2014080901.css">
<title>CSS3实现折角效果实战开发</title>
</head>

<body>
<div class="note">

</div>
</body>
</html>
接着我们给.note元素应用样式:
*{ /*清除所有元素的内外边距*/
margin:0;
padding:0;
}

.note { /*设置折叠样式基本属性*/
width:480px;
height:400px;
margin:2em auto; /*调整.note元素的外边距*/
padding:2em;

background:#53A3B4;
}
 

现在我们来看一下此时的运行效果:

那这个折叠效果怎么实现呢?请大家看好我下面的步骤。

我现在利用CSS3的伪元素给页面插入一块内容。

.note:before {
content:"";
display:block; /*伪元素默认是行内元素,所以如果要设定宽高,这必须显性设置为block*/

border-width:0 16px 16px 0; /*设置边框宽度*/
border-color:#fff #fff transparent transparent; background:transparent;
border-style:solid; /*设置边框为固体的*/
width:0; /*设定新创建的元素*/
}

这里我对伪元素:before做一个简单的介绍,:before伪元素必须指定内容,如果没有也必须设置content:""; 由于伪元素默认是行内元素,所以如果要设置宽高,这必须显性设定其为block。如果相对伪元素有更详细了解,请关注我的空间。

伪元素创建好了,但是我希望我创建的元素位于.note区域的右上角。好,我们可以通过position的relative(相对定位)和absolute(绝对定位)来调整元素的位置。

给.note应用position:relative(相对定位):

.note { /*设置折叠样式基本属性*/
width:480px;
height:400px;
margin:2em auto; /*调整.note元素的外边距*/
padding:2em;

background:#53A3B4;
position:relative;
}

接着利用绝对定位属性,使我们新创建的对象位于容器右上角:

.note:before {
content:"";

display:block; /*伪元素默认是行内元素,所以如果要设定宽高,这必须显性设置为block*/

border-width:0 16px 16px 0; /*设置边框宽度*/
border-color:#fff #fff transparent transparent; background:transparent;
border-style:solid; /*设置边框为固体的*/
width:0; /*设定新创建的元素*/

position:absolute; /*相对于父容器绝对定位,设置偏移父容器边框距离*/
top:0;
right:0;
}

此时,我们再看一下效果:

太好了,缺角已经实现了。我们一开始说过,折叠后的折角是有阴影效果的,现在就来给.note:before中添加阴影样式:

/*设置元素的阴影效果*/
-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.3), -1px 1px 1px rgba(0,0,0,0.2);
-moz-box-shadow:0 1px 1px rgba(0,0,0,0.3), -1px 1px 1px rgba(0,0,0,0.2);
box-shadow:0 1px 1px rgba(0,0,0,0.3), -1px 1px 1px rgba(0,0,0,0.2);

现在我们再看一下加完阴影样式后的效果吧:

至此,大功告成,原来利用纯CSS3实现折叠效果是如此简单。

由于是作为显示,我设定了固定高度,如果大家希望设置成弹性的,可以取消其属性。

更多实战教程,请大家继续关注我的空间,谢谢大家的阅读。

欢迎大家加入互联网技术交流群:62329335 

个人申明:所分享博文,绝对原创,并力争每一个知识点都通过实战演示来进行验证。

CSS3实战开发:手把手教大家折角效果实战开发

时间: 2024-10-05 20:27:06

CSS3实战开发:手把手教大家折角效果实战开发的相关文章

CSS3实战开发: 折角效果实战开发

<!DOCTYPE html> <html> <head> <meta charset="utf-9"> <meta name="keywords" content="css,css3,实战互联网,教程"> <meta name="description" content="css3实现折角效果,折角效果,css3实战尽在实战互联网" >

CSS3实战开发:手把手教你鼠标滑动特效开发

各位网友,如果你已经看过我的CSS3实战开发系列教程,我相信你对CSS3已经有了非常全面深刻的了解.有些人可能CSS3语法掌握了不少,但是真正实际用起来还有点生疏,甚至无从下手.请别担心,我会不断更新一系列实战开发案例,我会为大家分步骤剖析特效开发过程. 今天我将手把手带领大家开发一个鼠标滑动的特效案例,废话不多说,直接上效果动画: 你有没有觉得上面的这个特效很棒呢! 好,现在咱们就开始分步骤实战开发这个动画特效吧: 首先,我们先准备好html页面代码: <!DOCTYPE html> <

CSS3实战开发: 手把手教大家实战开发鼠标划过图片动画特效

各位网友大家好,我是陌上花会开,当然大家也可以叫我陌陌.今天这篇文章,我将手把手带领大家实战开发一个鼠标划过图片时的动画特效.在这里我不会给大家提供案例的源码下载,但是本人可以保证,只要大家跟着我的思路,一步步将代码复制到本地,一定会得到同样的运行效果.希望大家明白我的用心.好了不废话,直接进入今天的主题吧. 在今天这个案例里,我准备3个素材,一张背景图,两张风景图片.这个大家可以到网上自行下载. 在写代码之前,我先给大家展示一下,动画特效的效果图. 鼠标花过前: 当鼠标划过图片时,图片将逐渐变

CSS3实战开发:手把手教你照片墙实战开发

在<CSS3 2D转换技术之translate实战开发>文章中,我给大家列出了CSS3中的2D转换方法: 1.    translate() 2.    rotate() 3.    scale() 4.    skew() 5.    matrix() 同时对第一个方法 translate()做了非常详尽的介绍,并带领大家实战开发了一个导航条.如果你对translate不了解或不是太熟悉,请阅读我的博文 <CSS3 2D转换技术之translate实战开发> . 在讲解知识点之前

css3 折角效果

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>折角效果</title> <style type="text/css"> div { width: 300px; height: 200px; background: #333; position: relative; } div:before { content:

CSS3图片折角效果

本篇文章由:http://xinpure.com/css3-picture-angle-effect/ 图片折角效果主要是通过设置 border 属性实现的效果 效果预览 效果解析 假设我们将一个元素的 width .height 都设置为0,然后再将 border 设置为 80px,上下和左右边框分别为两种不同的颜色 即: width: 0; height: 0; border: 80px solid; border-color: #00a67c #333; 这时我们可以看到,四条边框像四个三

CSS打造的边框折角效果

<html> <head> <title>CSS打造的边框折角效果</title> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <style type="text/css"> <!-- .curlycontainer{ border: 1px solid #b8b8b8;

[swift实战入门]手把手教你编写2048(三)

上篇地址:swift实战入门之手把手教你编写2048(二) github地址:https://github.com/scarlettbai/2048.git. 今天给大家带来2048最后一篇,之前已经实现了向游戏区域中随机插入数字块,接下来要做的,就是当我们滑动屏幕时移动及合并数字块以及插入一个新的数字块.本篇的难点就是移动时的算法问题,首先来给大家讲一下算法. 2048的算法实现其实很简单,假如我们当前数字格的格式如下: | |4| | | | | |4| | |2| |2|2| |2| |

[swift实战入门]手把手教你编写2048(二)

上篇地址:swift实战入门之手把手教你编写2048(一) github地址:https://github.com/scarlettbai/2048.git. 上篇文章已经中已经把2048的游戏区块画好了,这篇来加入计分板以及往游戏面板中插入数字块 计分板同样作为一个view,我们新建一个ScoreView.swift文件,代码如下: import UIKit //这里协议的作用是方便别的类中调用计分板的scoreChanged方法 protocol ScoreProtocol{ func sc