用js实现的抽象CSS圆角效果!!


Posted in Javascript onMay 03, 2007

大概是去年的时候吧,就在网上见过了现成的CSS圆角效果的CSS及HTML代码,例如:

<html>
<head>
<title>css圆角效果</title>
<meta http-equiv="content-type" content="text/html; charset=gb2312">
<style type="text/css">
div.RoundedCorner{background: #9BD1FA}
b.rtop, b.rbottom{display:block;background: #FFF}
b.rtop b, b.rbottom b{display:block;height: 1px;overflow: hidden; background: #9BD1FA}
b.r1{margin: 0 5px}
b.r2{margin: 0 3px}
b.r3{margin: 0 2px}
b.rtop b.r4, b.rbottom b.r4{margin: 0 1px;height: 2px}
</style>
</head>
<body>
<div class="RoundedCorner">
<b class="rtop"><b class="r1"></b><b class="r2"></b><b class="r3"></b><b class="r4"></b></b>
1
<b class="rbottom"><b class="r4"></b><b class="r3"></b><b class="r2"></b><b class="r1"></b></b>
</div>
</body>
</html> 

当然这样人为的把圆角值设置好,也非常好用了,基本上这段代码拿过去就可以用,但是如果要改变这个圆角的大小,要在这个角上加边框或基它的效果,那这段代码拿来就发挥不了它的威力了.就想做一个抽像化的组件化的东西出来!今年可谓是花费了几乎一天的时间!

想一想,圆角的四个角加在一起正好是一个圆,而圆的表达式是x*x+y*y=r*r,即x的平方加上y的平方等于半径的平方!有了这个公式,那么实现圆解的理论就得以角决了!

开始一步步的测试由没有到有,由零难化到组件化吧!我把一个圆角实现分为这样的结构
[顶部][顶部圆角显示控制][/顶部]
[主体][主体左边显示圆解控制][主体内容][主体右边显示贺角控制][/主体]
[底部][底部圆解显示控制][/底部]
得到今天的测试代码:

<!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=gb2312" />
<title>CSS圆角框加组件开发--测试过程</title>
<style type="text/css">
<!--
#box,#topbox,#bottombox{
width:400px;
}
#box .content{ background-color:#FFCC00;height:400px;}
<?php
for($y=1;$y<=4;$y++){
 $x=(int)sqrt(4*4-$y*$y);
 $sx=4-$x;
 echo ".line{$y}{height:1px;overflow:hidden; background-color:#FFCC00;margin: 0 {$sx}px;}\n";
}
?>

-->
</style>
</head>

<body>
<div id="topbox">
<?php
for($y=4;$y>=1;$y--){
echo "<div class=\"line{$y}\"></div>\n";
}
?>
</div>
<div id="box">
<div class="content"> aaaaaaaaaaaaaaaaaa</div>
</div>
<div id="bottombox">
<?php
for($y=1;$y<=4;$y++){
echo "<div class=\"line{$y}\"></div>\n";
}
?>
</div>
</body>
</html>

Javascript 相关文章推荐
用JavaScript实现单继承和多继承的简单方法
Mar 29 Javascript
javascript 广告后加载,加载完页面再加载广告
Nov 25 Javascript
js DOM 元素ID就是全局变量
Sep 20 Javascript
jQuery函数的等价原生函数代码示例
May 27 Javascript
js模拟点击以提交表单为例兼容主流浏览器
Nov 29 Javascript
页面元素绑定jquery toggle后元素隐藏的解决方法
Mar 27 Javascript
jquery中ajax使用error调试错误的方法
Feb 08 Javascript
javascript中checkbox使用方法实例演示
Nov 19 Javascript
js基于myFocus实现轮播图效果
Feb 14 Javascript
简单谈谈js的数据类型
Sep 25 Javascript
Node.js如何对SQLite的async/await封装详解
Feb 14 Javascript
layui table 表格模板按钮的实例代码
Sep 21 Javascript
学习jquery必备 api中英文对照的chm手册 下载
May 03 #Javascript
Packer 3.0 JS压缩及混淆工具 下载
May 03 #Javascript
javascript+dom树型菜单类,希望朋友们一起进步
May 03 #Javascript
几行代码轻松搞定jquery实现flash8类似的连接效果
May 03 #Javascript
JS实多级联动下拉菜单类,简单实现省市区联动菜单!
May 03 #Javascript
javascript静态的url如何传递
May 03 #Javascript
可以支持多中格式的JS键盘
May 02 #Javascript
You might like
PHP中“简单工厂模式”实例代码讲解
2012/09/04 PHP
PHP小教程之实现双向链表
2014/06/12 PHP
PHP实现打包zip并下载功能
2018/06/12 PHP
PHP析构函数destruct与垃圾回收机制的讲解
2019/03/22 PHP
javascript scrollTop正解使用方法
2013/11/14 Javascript
Javascript中Array.prototype.map()详解
2014/10/22 Javascript
生成二维码方法汇总
2014/12/26 Javascript
JavaScript实现动态添加,删除行的方法实例详解
2015/07/02 Javascript
jQuery插件ajaxfileupload.js实现上传文件
2020/10/23 Javascript
使用three.js 画渐变的直线
2016/06/05 Javascript
ionic开发中点击input时键盘自动弹出
2016/12/23 Javascript
Express+Nodejs 下的登录拦截实现代码
2017/07/01 NodeJs
js实现canvas图片与img图片的相互转换的示例
2017/08/31 Javascript
vue 添加vux的代码讲解
2017/11/30 Javascript
Vuex中实现数据状态查询与更改
2019/11/08 Javascript
element el-tree组件的动态加载、新增、更新节点的实现
2020/02/27 Javascript
python定时采集摄像头图像上传ftp服务器功能实现
2013/12/23 Python
详解Swift中属性的声明与作用
2016/06/30 Python
python利用标准库如何获取本地IP示例详解
2017/11/01 Python
python 随机打乱 图片和对应的标签方法
2018/12/14 Python
通过pykafka接收Kafka消息队列的方法
2018/12/27 Python
tensorflow实现测试时读取任意指定的check point的网络参数
2020/01/21 Python
Python django框架开发发布会签到系统(web开发)
2020/02/12 Python
一款利用html5和css3实现的3D滚动特效的教程
2015/01/04 HTML / CSS
应届大专毕业生自我鉴定
2014/04/08 职场文书
5s标语大全
2014/06/23 职场文书
机关党员进社区活动总结
2014/07/05 职场文书
乡镇党的群众路线教育实践活动总结报告
2014/10/30 职场文书
2014年营业员工作总结
2014/11/18 职场文书
2015年安全生产月活动总结
2015/03/26 职场文书
2015社区六五普法工作总结
2015/04/21 职场文书
62句有关感恩节文案(推荐收藏)
2019/11/28 职场文书
php 防护xss,PHP的防御XSS注入的终极解决方案
2021/04/01 PHP
MySQL命令行操作时的编码问题详解
2021/04/14 MySQL
仅用几行Python代码就能复制她的U盘文件?
2021/06/26 Python
动画电影《龙珠超 超级英雄》延期上映
2022/03/20 日漫