CSS3 绘制BMW logo实的现代码


Posted in HTML / CSS onApril 25, 2013

火热的移动互联网让我看到了HTML5,CSS3的伟大前景。

虽然web端对CSS3的支持还有很多兼容性问题,但是我很愿意相信web端越来越富了,越来越生动了。 

这是我对他们的学习越来越有兴趣了。

下面是我用CSS3绘制的一个BMW的标志。

浏览器支持:chrome, safari, firefox---------------版本越高越支持

运行截图:

 CSS3 绘制BMW logo实的现代码

代码:

复制代码
代码如下:

<!DOCTYPE html></p> <p> <html><head></p> <p> <script type="text/javascript">

</script>
<style type="text/css">
.wrapper {
width:365px;
height:365px;
background: -webkit-gradient(linear, 0 0, 100% 100%, from(#f3f3f3), to(#f3f3f3));
background:-moz-linear-gradient(0 0 0deg,#f3f3f3 0%,#b0b1b5 50%,#f3f3f3 100%);
border-radius:365px;
border:1px solid #d3d3d3;
}
.wrapper .wrapper1 {
position:relative;
border:1px solid #0f0f0f;
width:351px;
height:351px;
margin-top:7px;
margin-left:7px;
border-radius:351px;
background: -webkit-gradient(linear, 0 0, 50% 100%, from(#aaa), to(#000));
background:-moz-linear-gradient(0 0 -60deg,#aaa 0%, #000 100%);
box-shadow: #000 0px 0px 1px;
}
.wrapper .wrapper1 .text {
color:#fbfbfb;
font-size:72px;
font-weight:bold;
text-shadow:#000 0px 3px 4px;
position:absolute;
font-family:Arial, Helvetica, sans-serif;
}
.wrapper .wrapper1 .text.B {
left: 38px;
top: 42px;
-webkit-transform: rotate(-54deg) scale(1);
/*-moz-transform: rotate | scale | skew | translate ;
-webkit-transform: rotate | scale | skew | translate ;
-o-transform: rotate | scale | skew | translate ;
-ms-transform: rotate | scale | skew | translate ;
transform: rotate | scale | skew | translate ;
*/
-webkit-transform: rotate(-54deg) scaleX(1.5);
-o-transform: rotate(-54deg) scaleX(1.5);
-ms-transform: rotate(-54deg) scaleX(1.5);
transform: rotate(-54deg) scaleX(1.5);
}
.wrapper .wrapper1 .text.M {
left: 148px;
top: -10px;
-webkit-transform:scaleX(1.3);
-o-transform:scaleX(1.3);
-ms-transform:scaleX(1.3);
transform:scaleX(1.3);
}
.wrapper .wrapper1 .text.W {
right: 32px;
top: 42px;
-webkit-transform: rotate(51deg) scaleX(1.1);
-o-transform: rotate(51deg) scaleX(1.1);
-ms-transform: rotate(51deg) scaleX(1.1);
transform: rotate(51deg) scaleX(1.1);
}
.wrapper .wrapper1 .wrapper2 {
position:relative;
width:217px;
height:217px;
margin-top:62.5px;
margin-left:62.5px;
background: -webkit-gradient(linear, 100% 100%, 0 0, from(#fff), to(#818181));
background:-moz-linear-gradient(0 0 90deg,#fff 100%, #818181 0%);
border:4px solid #000;
border-radius:217px;
box-shadow: #000 0px 0px 5px;
}
.wrapper .wrapper1 .wrapper2 .arc1 {
position:absolute;
width:100px;
height:100px;
background: -webkit-gradient(linear, 0 0, 100% 100%, from(#bee5ea), to(#2ba4eb));
background:-moz-linear-gradient(0 0 0deg,#bee5ea 0%, #2ba4eb 100%);
border-radius:200px 0 0 0;
border-right:1px solid #1a91c9;
border-bottom:1px solid #1a91c9;
border-left:1px solid #d0eaeb;
border-top:1px solid #ffffff;
box-shadow:#015486 2px 2px 1px;
top:3px;
left:4px;
}
.wrapper .wrapper1 .wrapper2 .arc2 {
position:absolute;
width:100px;
height:100px;
background: -webkit-gradient(linear, 0 0, 100% 100%, from(#e8e8e8), to(#f5f5f5));
background:-moz-linear-gradient(0 0 0deg,#e8e8e8 0%, #f5f5f5 100%);
border-radius:0 0 0 200px;
border-top:1px solid #d1ded7;
border-right:1px solid #55595c;
border-bottom:1px solid #55565a;
box-shadow:#282b30 1px 1px 1px;
bottom:4px;
left:5px;
}
.wrapper .wrapper1 .wrapper2 .arc3 {
position:absolute;
width:100px;
height:100px;
background: -webkit-gradient(linear, 0 0, 100% 100%, from(#44c2e8), to(#0e5c9c));
background:-moz-linear-gradient(0 0 0deg,#44c2e8 0%, #0e5c9c 100%);
border-radius:0 0 200px 0;
border-left:1px solid #c4eefe;
border-top:1px solid #c4eefe;
border-right:1px solid #00284b;
border-bottom:1px solid #00284b;
box-shadow:#015486 1px 1px 2px;
bottom:4px;
right:4px;
}
.wrapper .wrapper1 .wrapper2 .arc4 {
position:absolute;
width:100px;
height:100px;
background: -webkit-gradient(linear, 0 100%, 100% 0, from(#e8e8e8), to(#f5f5f5));
background:-moz-linear-gradient(0 0 0deg,#e8e8e8 0%, #f5f5f5 100%);
border-radius:0 200px 0 0;
border-left:1px solid #fffffd;
border-right:1px solid #55595c;
border-bottom:1px solid #55565a;
box-shadow:#282b30 1px 2px 1px;
top:5px;
right:4px;
}

</style>
</head>
<body>
<div class="wrapper">
<div class="wrapper1">
<span class="text B">B</span>
<span class="text M">M</span>
<span class="text W">W</span>
<div class="wrapper2">
<div class="arc1"></div>
<div class="arc2"></div>
<div class="arc3"></div>
<div class="arc4"></div>
</div>
</div>
</div>

</body></html>

HTML / CSS 相关文章推荐
css3实现图片遮罩效果鼠标hover以后出现文字
Nov 05 HTML / CSS
使用CSS3的ruby-position固定注音位置的用法示例
Jul 05 HTML / CSS
5分钟让你掌握css3阴影、倒影、渐变小技巧(小编推荐)
Aug 15 HTML / CSS
html5指南-7.geolocation结合google maps开发一个小的应用
Jan 07 HTML / CSS
用html5实现语音搜索框的方法
Mar 18 HTML / CSS
HTML5 Canvas绘制五星红旗
May 04 HTML / CSS
html5是什么_动力节点Java学院整理
Jul 07 HTML / CSS
html5清空画布方法(三种)
Oct 16 HTML / CSS
canvas 阴影和图形变换的示例代码
Jan 02 HTML / CSS
深入了解canvas在移动端绘制模糊的问题解决
Apr 30 HTML / CSS
Html5监听手机摇一摇事件的实现
Nov 07 HTML / CSS
使用HBuilder制作一个简单的HTML5网页
Jul 07 HTML / CSS
纯HTML+CSS3制作导航菜单(附源码)
Apr 24 #HTML / CSS
Css3+Js制作漂亮时钟(附源码)
Apr 24 #HTML / CSS
CSS3盒子模型详解
Apr 24 #HTML / CSS
CSS3盒子模型详解
Apr 24 #HTML / CSS
css3闪亮进度条效果实现思路及代码
Apr 17 #HTML / CSS
关于CSS Tooltips(鼠标经过时显示)的效果
Apr 10 #HTML / CSS
用CSS3实现Win8风格的方格导航菜单效果
Apr 10 #HTML / CSS
You might like
生成php程序的php代码
2008/04/07 PHP
浅谈PHP 闭包特性在实际应用中的问题
2009/10/30 PHP
php中curl、fsocket、file_get_content三个函数的使用比较
2014/05/09 PHP
PHP防止注入攻击实例分析
2014/11/03 PHP
js 实现日期灵活格式化的小例子
2013/07/14 Javascript
javascript中全局对象的isNaN()方法使用介绍
2013/12/19 Javascript
一个可以增加和删除行的table并可编辑表格中内容
2014/06/16 Javascript
JS实现向表格中动态添加行的方法
2015/03/30 Javascript
js弹出框、对话框、提示框、弹窗实现方法总结(推荐)
2016/05/31 Javascript
js的各种排序算法实现(总结)
2016/07/23 Javascript
Bootstrap table右键功能实现方法
2017/02/20 Javascript
jQuery EasyUI 为Combo,Combobox添加清除值功能的实例
2017/04/13 jQuery
jQuery使用JSONP实现跨域获取数据的三种方法详解
2017/05/04 jQuery
bootstrap table表格客户端分页实例
2017/08/07 Javascript
微信小程序实现顶部普通选项卡效果(非swiper)
2020/06/19 Javascript
react组件从搭建脚手架到在npm发布的步骤实现
2019/01/09 Javascript
jquery实现下载图片功能
2019/07/18 jQuery
javascript事件监听与事件委托实例详解
2019/08/16 Javascript
vue监听dom大小改变案例
2020/07/29 Javascript
vue中使用echarts的示例
2021/01/03 Vue.js
[00:55]2015国际邀请赛中国区预选赛5月23日——28日约战上海
2015/05/25 DOTA
Python的消息队列包SnakeMQ使用初探
2016/06/29 Python
django框架使用orm实现批量更新数据的方法
2019/06/21 Python
pandas 如何分割字符的实现方法
2019/07/29 Python
Python如何实现大型数组运算(使用NumPy)
2020/07/24 Python
python实现b站直播自动发送弹幕功能
2021/02/20 Python
python实现简单文件读写函数
2021/02/25 Python
Foot Locker加拿大官网:美国知名运动产品零售商
2019/07/21 全球购物
软件测试面试题
2015/10/21 面试题
与C++相比,Java中的数组有什么不同
2014/03/25 面试题
PHP使用Redis队列执行定时任务实例讲解
2021/03/24 PHP
群众路线教育实践活动个人对照检查材料
2014/09/22 职场文书
四风个人对照检查材料思想汇报(办公室通用版)
2014/10/07 职场文书
2015年乡镇纪委工作总结
2015/05/26 职场文书
圣诞晚会主持词
2015/07/01 职场文书
在Django中使用MQTT的方法
2021/05/10 Python