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

2016-02-19 09:59 5 1 收藏

下面图老师小编要跟大家分享用js实现的抽象CSS圆角效果!!,简单的过程中其实暗藏玄机,还是要细心学习,喜欢还请记得收藏哦!

【 tulaoshi.com - Web开发 】

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


html
head
titlecss圆角效果/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"/bb class="r2"/bb class="r3"/bb class="r4"/b/b
1
b class="rbottom"b class="r4"/bb class="r3"/bb class="r2"/bb 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" /
titleCSS圆角框加组件开发--测试过程/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}"/divn";
}
?
/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}"/divn";
}
?
/div
/body
/html

来源:https://www.tulaoshi.com/n/20160219/1592887.html

延伸阅读
标签: Web开发
    现在使用CSS3 技术不需要图片即可实现圆角,把侧边栏标题背景的圆角效果和搜索框的圆角效果用 CSS3 实现。记录一下以便以后使用。W3C 很早就制订了实现了 CSS 圆角的 CSS3 属性:border-radius,Firefox 和 Safari 也通过私有属性实现了该功能:     效果如下:     其中 -moz-bor...
标签: Web开发
初步介绍 当然,我知道现在有成千上万个关于 用CSS处理圆角 的教程,但不管怎么说,我仍然想把这篇文章展示给您。也希望您会发现这篇文章会非常有用。需要重点指出的是,这篇教程彻底地应用高级CSS技术,但是,我会尽力使初学者看起来简单。 CSS3 在这里还没有得到完全的应用,所以,知道现在,我会保持W3C验证的有效。 看一下演示 ...
标签: Web开发
导言: 本文探讨的是圆角框的终极解决方案,其核心关键词是圆滑、完美、兼容、重用性、语义,这些技术都是收集目前网络上最流行的做法。纵观种种方法,各有其优势,请针对不同的环境分别使用。 圆角框,因为其样式比直角框漂亮,所以成为设计师心中偏爱的设计元素。现在的web标准下大量的网页、博客都采用圆角框设计,成为一道亮丽的风...
标签: Web开发
Web2.0中,圆角效果是很常见的,以前都是用图片来模仿,现在直接用css就能实现,例子代码如下 Html代码: !DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" html head titleUntitled Document/title meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /head style type="text/css" body{...
标签: Web开发
用css实现透视效果 今天萌发一个想法,用css来实现透视效果。起初,我想到的是我们常见的添加阴影效果的方法,用多个div通过偏移来实现,但这需要很多 div,不够理想。随后,我想到css的一个属性:border,在border相连接处可以产生对角线效果。这样用两个div就可以实现,我们先看看 最终效果 ,然后再分析实现过程。 首先,我们看看bor...

经验教程

233

收藏

69
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部