纯CSS实现的大小渐变、渐远效果


Posted in HTML / CSS onApril 15, 2014

效果图:

纯CSS实现的大小渐变、渐远效果

效果差不多也就是上图的这个样子,基本原理如图所示:

纯CSS实现的大小渐变、渐远效果

将所有的盒子都绝对定位,然后将宽高各50%的递缩小,并且在top、right、bottom和left针对性的偏移即可,代码如下:

复制代码
代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>CSS to achieve the visual effect and further away[既是安安]</title>
<link rel="stylesheet" rev="stylesheet" type="text/css" href="http://www.jsann.com/framework/reset.css" />
<style type="text/css">
div
{
background-color:#a40000;
position:absolute;
}
div.main
{
width:100px;
height:100px;
top:50%;
left:50%;
}
div.main div
{
width:50%;
height:50%;
}
div.main div div div div
{
overflow:hidden;/* 为了兼容IE6 */
}
div.main div.left-top,div.main div.left-top div
{
top:-50%;
left:-50%;
}
div.main div.right-top,div.main div.right-top div
{
top:-50%;
right:-50%;
}
div.main div.left-bottom,div.main div.left-bottom div
{
left:-50%;
bottom:-50%;
}
div.main div.right-bottom,div.main div.right-bottom div
{
right:-50%;
bottom:-50%;
}
</style>
</head>
<body>
<div class="main">
<div class="left-top"><div><div><div></div></div></div></div>
<div class="right-top"><div><div><div></div></div></div></div>
<div class="left-bottom"><div><div><div></div></div></div></div>
<div class="right-bottom"><div><div><div></div></div></div></div>
</div>
</body>
</html>

这个方法在IE6下有一个BUG,就是最后的一个盒子的高度不能小于6px,原因就是:
大家都知道IE6下默认的字体尺寸大致在 12 - 14px 之间,当你试图定义一个高度小于这个默认值的 div 的时候, IE 会固执的认为这个层的高度不应该小于字体的行高。所以即使你用 height: 6px; 来定义了一个 div 的高度,实际在 IE 下显示的仍然是一个 12px 左右高度的层。另一方面,除了中间的那个盒子,其他的盒子都是在其基础之上偏移而来。也就是说,最多的,我们可以给最后的那个div加上overflow:hidden;(因为我们给任何一个div加上overflow:hidden;之后,它将不在会有子级偏移出来)这样的话最后的那个div的最小高度应该在6px左右(假设IE6给盒子设的默认高度是12px;)那样的话才不至于它的父级需要overflow:hidden;。

HTML / CSS 相关文章推荐
使用CSS3来实现滚动视差效果的教程
Aug 24 HTML / CSS
Grid 宫格常用布局的实现
Jan 10 HTML / CSS
浅谈HTML5 defer和async的区别
Jun 07 HTML / CSS
HTML中fieldset标签概述及使用方法
Feb 01 HTML / CSS
html5 css3实例教程 一款html5和css3实现的小机器人走路动画
Oct 20 HTML / CSS
HTML5制作酷炫音频播放器插件图文教程
Dec 30 HTML / CSS
使用HTML5的Notification API制作web通知的教程
May 08 HTML / CSS
微信端html5页面调用分享接口示例
Mar 14 HTML / CSS
一文彻底解决HTML5页面中长按保存图片功能
Jun 10 HTML / CSS
video下autoplay属性无效的解决方法(添加muted属性)
May 19 HTML / CSS
amazeui页面分析之登录页面的示例代码
Aug 25 HTML / CSS
HTML+css盒子模型案例(圆,半圆等)“border-radius” 简单易上手
May 10 HTML / CSS
CSS中几个与换行有关的属性简明总结
Apr 15 #HTML / CSS
css3 条纹化和透明化表格Firefox下测试成功
Apr 15 #HTML / CSS
css3新增颜色表示方式分享
Apr 15 #HTML / CSS
常用的四种CSS透明属性介绍
Apr 12 #HTML / CSS
可以随进度显示不同颜色的css3进度条分享
Apr 11 #HTML / CSS
css3发光搜索表单分享
Apr 11 #HTML / CSS
用css3实现当鼠标移进去时当前亮其他变灰效果
Apr 08 #HTML / CSS
You might like
php设计模式 Builder(建造者模式)
2011/06/26 PHP
php验证手机号码(支持归属地查询及编码为UTF8)
2013/02/01 PHP
PHP实现统计代码行数小工具
2019/09/19 PHP
传智播客学习之java 反射
2009/11/22 Javascript
jQuery powerFloat万能浮动层下拉层插件使用介绍
2010/12/27 Javascript
jquery异步请求实例代码
2011/06/21 Javascript
再谈javascript面向对象编程
2012/03/18 Javascript
jQuery获取单击节点对象的方法
2016/06/02 Javascript
D3.js实现折线图的方法详解
2016/09/21 Javascript
AngularJS实现表单验证功能
2017/01/09 Javascript
微信小程序 WebSocket详解及应用
2017/01/21 Javascript
深入理解Javascript中的作用域链和闭包
2017/04/25 Javascript
基于node.js制作简单爬虫教程
2017/06/29 Javascript
VueJs 将接口用webpack代理到本地的方法
2017/11/27 Javascript
使用vue-router为每个路由配置各自的title
2018/07/30 Javascript
Element-UI踩坑之Pagination组件的使用
2018/10/29 Javascript
vue组件文档(.md)中如何自动导入示例(.vue)详解
2019/01/25 Javascript
使用Vue.observable()进行状态管理的实例代码详解
2019/05/26 Javascript
vue使用过滤器格式化日期
2021/01/20 Vue.js
详解Python中dict与set的使用
2015/08/10 Python
Python多线程经典问题之乘客做公交车算法实例
2017/03/22 Python
Python3编码问题 Unicode utf-8 bytes互转方法
2018/10/26 Python
钉钉群自定义机器人消息Python封装的实例
2019/02/20 Python
Django的Modelforms用法简介
2019/07/27 Python
使用python模拟命令行终端的示例
2019/08/13 Python
matplotlib实现数据实时刷新的示例代码
2021/01/05 Python
如何使用Python进行PDF图片识别OCR
2021/01/22 Python
eDreams加拿大:廉价航班、酒店和度假
2019/03/29 全球购物
linux面试题参考答案(11)
2012/05/01 面试题
灵泰克Java笔试题
2016/01/09 面试题
自荐书封面下载
2013/11/29 职场文书
《美丽的公鸡》教学反思
2014/02/25 职场文书
村干部培训班主持词
2014/03/28 职场文书
习总书记三严三实学习心得体会
2014/10/13 职场文书
奇妙的 CSS shapes(CSS图形)
2021/04/05 HTML / CSS
HTML怎么设置下划线?html文字加下划线方法
2021/12/06 HTML / CSS