用css3和html实现创建 Christmas Tree Ornaments(baubles)


css3的出现让我们在实现一些功能效果上变得更简洁,更方便。今天用css3实现圣诞树的一些装饰品,但是支持的浏览器有限,如ie6/7/8不能很好的支持这些css3属性,但是在其他浏览器上看起来效果还挺炫的。


html代码如下:


<ul id="bauble-container">
<li>
<div class="bauble red-bauble"></div>
</li>
<li>
<div class="bauble blue-bauble"></div>
</li>
<li>
<div class="bauble yellow-bauble"></div>
</li>
<li>
<div class="bauble green-bauble"></div>
</li>


css代码如下


* {
margin:0;
padding:0;
}
html {
background:#f2f5f6;
background:-moz-linear-gradient(top, #f2f5f6, #c8d7dc);
background:-webkit-gradient(linear, left bottom, left top, color-stop(0, #c8d7dc), color-stop(1, #f2f5f6));
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#f2f5f6', endColorstr='#c8d7dc'); /* IE6 & IE7 */
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#f2f5f6', endColorstr='#c8d7dc')"; /* IE8 */
height:100%;
}
#bauble-container {
list-style:none;
width:568px;
margin:150px auto;
padding:0;
}
#bauble-container li {
margin:0 20px;
float:left;
}
#bauble-container li:before {
content:"";
background:#dadada;
background:-moz-linear-gradient(bottom, #9c9c9c, rgba(255,255,255,0));
background:-webkit-gradient(linear, left bottom, right top, from(#9c9c9c), color-stop(100%, rgba(255,255,255,0)));
height:50px;
width:2px;
display:block;
margin:0 auto;
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#ffffff', endColorstr='#9c9c9c'); /* IE6 & IE7 */
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#ffffff', endColorstr='#9c9c9c')"; /* IE8 */
}
#bauble-container li:nth-child(odd) {
-moz-transform:rotate(-5deg);
-webkit-transform:rotate(-5deg);
-o-transform:rotate(-5deg);
-ms-transform:rotate(-5deg);
}
#bauble-container li:nth-child(even) {
-moz-transform:rotate(5deg);
-webkit-transform:rotate(5deg);
-o-transform:rotate(5deg);
-ms-transform:rotate(5deg);
}
.bauble {
-moz-border-radius:100px;
border-radius:100px;
-moz-box-shadow:0 0 5px #777777;
box-shadow:0 0 5px #777777;
-webkit-box-shadow:0 0 5px #777777;
border: 1px solid rgba(0,0,0,0.3);
position: relative;
height: 100px;
width: 100px;
}
.bauble:before {
content:"";
background:#fff;
background:-moz-linear-gradient(left, #fff, #9c9c9c, #fff, #9c9c9c );
background:-webkit-gradient(linear, left center, right center, from(#fff), color-stop(25%, #9c9c9c), color-stop(50%, #fff), color-stop(75%, #9c9c9c));
-moz-border-radius:2px;
border-radius:2px;
-moz-box-shadow:0 1px 0 rgba(0,0,0,0.2), 0 -1px 0 rgba(255,255,255,0.3) inset;
-webkit-box-shadow:0 1px 0 ragba(0, 0, 0, 0.2), 0 -1px 0 rgba(255,255,255,0.3) inset;
box-shadow:0 1px 0 ragba(0, 0, 0, 0.2), 0 -1px 0 rgba(255,255,255,0.3) inset;
border:1px solid #dadada;
height:10px;
width:20px;
position:absolute;
left:50%;
top:-12px;
margin-left:-10px;
}
.bauble:after {
content:"";
-moz-border-radius:100px;
border-radius:100px;
background-color:#fff;
background:-moz-linear-gradient(bottom, #fff, rgba(255,255,255,0.1));
background:-webkit-gradient(linear, left bottom, right top, from(#fff), color-stop(100%, rgba(255,255,255,0.1)));
position:absolute;
top:0;
left:50%;
margin-left:-40px;
height:80px;
width:80px;
opacity:0.15;
}
.red-bauble {
background:#c8171f;
background:-moz-radial-gradient(center, circle cover, #f9d0be, #c8171f);
background:-webkit-gradient(radial, 40% 40%, 0, 40% 40%, 50, from(#f9d0be), to(#c8171f));
}
.blue-bauble {
background: #00a1ee; /* Fallback */
background: -moz-radial-gradient(center 45deg, circle cover, #cde6f9, #00a1ee);
background: -webkit-gradient(radial, 40% 40%, 0, 40% 40%, 50, from(#cde6f9), to(#00a1ee));
}
.yellow-bauble {
background:#fcb83d;
background:-moz-radial-gradient(center 45deg, circle cover, #fcf3a6, #fcb83d);
background:-webkit-gradient(radial, 40% 40%, 0, 40% 40%, 50, from(#fcf3a6), to(#fcb83d));
}
.green-bauble {
background:#4d8d00;
background:-moz-radial-gradient(center 45deg, circle cover, #d1e5b2, #4d8d00);
background:-webkit-gradient(radial, 40% 40%, 0, 40% 40%, 50, from(#d1e5b2), to(#4d8d00));
}

在主要的浏览器中的预览情况如下;

Mozilla Firefox 3.6


Google Chrome 6.0.4


Safari 5.02

Opera 10.63


IE9 Preview



资源下载链接为: https://pan.quark.cn/s/5c50e6120579 在Android移动应用开发中,定位功能扮演着极为关键的角色,尤其是在提供导航、本地搜索等服务时,它能够帮助应用获取用户的位置信息。以“baiduGPS.rar”为例,这是一个基于百度地图API实现定位功能的示例项目,旨在展示如何在Android应用中集成百度地图的GPS定位服务。以下是对该技术的详细阐述。 百度地图API简介 百度地图API是由百度提供的一系列开放接口,开发者可以利用这些接口将百度地图的功能集成到自己的应用中,涵盖地图展示、定位、路径规划等多个方面。借助它,开发者能够开发出满足不同业务需求的定制化地图应用。 Android定位方式 Android系统支持多种定位方式,包括GPS(全球定位系统)网络定位(通过Wi-Fi及移动网络)。开发者可以根据应用的具体需求选择合适的定位方法。在本示例中,主要采用GPS实现高精度定位。 权限声明 在Android应用中使用定位功能前,必须在Manifest.xml文件中声明相关权限。例如,添加<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />,以获取用户的精确位置信息。 百度地图SDK初始化 集成百度地图API时,需要在应用启动时初始化地图SDK。通常在Application类或Activity的onCreate()方法中调用BMapManager.init(),并设置回调监听器以处理初始化结果。 MapView的创建 在布局文件中添加MapView组件,它是地图显示的基础。通过设置其属性(如mapType、zoomLevel等),可以控制地图的显示效果。 定位服务的管理 使用百度地图API的LocationClient类来管理定位服务
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值