用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 相关文章推荐
JS input文本框禁用右键和复制粘贴功能的代码
Apr 15 Javascript
jquery创建一个ajax关键词数据搜索实现思路
Feb 26 Javascript
jquery中常用的函数和属性详细解析
Mar 07 Javascript
jquery序列化表单以及回调函数的使用示例
Jul 02 Javascript
Web开发必知Javascript技巧大全
Feb 23 Javascript
移动端横屏的JS代码(beta)
May 16 Javascript
解读ES6中class关键字
Nov 20 Javascript
JavaScript重复元素处理方法分析【统计个数、计算、去重复等】
Dec 14 Javascript
细说webpack源码之compile流程-入口函数run
Dec 26 Javascript
jQuery模拟html下拉多选框的原生实现方法示例
May 30 jQuery
TypeScript之调用栈的实现
Dec 31 Javascript
使用JavaScript实现贪吃蛇游戏
Sep 29 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面向对象编程快速入门
2006/12/14 PHP
php数字转汉字代码(算法)
2011/10/08 PHP
PHP中echo与print区别点整理
2021/03/09 PHP
让广告代码不再影响你的网页加载速度
2006/07/07 Javascript
使用TextRange获取输入框中光标的位
2006/10/14 Javascript
某页码显示的helper 少量调整,另附js版
2010/09/12 Javascript
php 中序列化和json使用介绍
2013/07/08 Javascript
javascript 手动给表增加数据的小例子
2013/07/10 Javascript
javascript full screen 全屏显示页面元素的方法
2013/09/27 Javascript
jquery链式操作的正确使用方法
2014/01/06 Javascript
javascript中不提供sleep功能如何实现这个功能
2014/05/27 Javascript
BootStrap下jQuery自动完成的样式调整
2016/05/30 Javascript
JS+CSS3实现超炫的散列画廊特效
2016/07/16 Javascript
JavaScript中三个等号和两个等号你了解多少
2017/07/04 Javascript
深入理解js 中async 函数的含义和用法
2018/05/13 Javascript
使用vue-cli webpack 快速搭建项目的代码
2018/11/21 Javascript
深入理解 JS 垃圾回收
2019/06/03 Javascript
vue@cli3项目模板怎么使用public目录下的静态文件
2020/07/07 Javascript
JS hasOwnProperty()方法检测一个属性是否是对象的自有属性的方法
2021/01/29 Javascript
[02:54]DOTA2亚洲邀请赛 VG战队出场宣传片
2015/02/07 DOTA
python django集成cas验证系统
2014/07/14 Python
Python实例方法、类方法、静态方法的区别与作用详解
2019/03/25 Python
python的内存管理和垃圾回收机制详解
2019/05/18 Python
使用Python做垃圾分类的原理及实例代码附源码
2019/07/02 Python
python2.7的flask框架之引用js&amp;css等静态文件的实现方法
2019/08/22 Python
Python图片处理模块PIL操作方法(pillow)
2020/04/07 Python
Python爬虫之Selenium多窗口切换的实现
2020/12/04 Python
阿联酋电子产品购物网站:Menakart
2017/09/15 全球购物
给排水专业应届生求职信
2013/10/12 职场文书
公司培训心得体会
2014/01/03 职场文书
公司离职证明范本
2014/01/13 职场文书
施工质量承诺书范文
2014/05/30 职场文书
老干部工作先进事迹
2014/08/17 职场文书
2015年干部教育培训工作总结
2015/05/15 职场文书
2015入党自传书范文
2015/06/26 职场文书
分享python函数常见关键字
2022/04/26 Python