前一阵在园子里看到一篇文章《使用css3仿造window7的开始菜单》,文中仅使用CSS3 实现了Windows 7 开始菜单的动态效果,很久以来一直被WPF/Silverlight 山上的风景所吸引,未成想其他的山也同样引人入胜。于是心血来潮也尝试着做了一个Windows 7 桌面效果,先来看几张截图吧。

桌面程序鼠标Hover 效果:

任务栏程序鼠标Hover 效果:

开始菜单效果:

桌面程序图标

桌面背景及程序图标的结构如下:

<div id="win"><ul id="app"><li>
<a href="#"><img src="data:images/computer.png"><br />Computer</a>
</li><li>
<a href="#"><img src="data:images/recycle.png"><br />Recycle Bin</a>
</li><li>
<a href="#"><img src="data:images/network.png"><br />Network</a>
</li></ul>
</div>

在桌面<div>中加入背景图片:

#win
{background-image: url(images/win7bg.jpg);background-position: center;width: 880px;height: 550px;border: #ffffff 1px solid;
}

为桌面应用图标添加鼠标Hover 动态效果,text-shadow 用来设置应用程序文字阴影效果,-webkit-border-radius 可设置边框圆角:

#app
{float: left;text-align: center;margin: -15px 0 0 -30px;list-style: none;
}#app a
{text-decoration: none;border: solid 1px transparent;display: block;padding: 3px;margin: 20px 0 0 0;color: #ffffff;text-shadow: 0.2em 0.1em 0.3em #000000;
}#app a:hover
{border: solid 1px #bbd6ec;-webkit-border-radius: 3px;box-shadow: inset 0 0 1px #fff;-webkit-box-shadow: inset 0 0 1px #fff;background-color: #5caae8;
}

    

任务栏程序图标

下面是任务栏结构的HTML代码:

<div id="taskbar"><a href="#" id="start"></a><a href="#" style="left: 60px"><img src="data:images/ie.png" /></a>
<a href="#" style="left: 120px"><img src="data:images/library.png" /></a>
<a href="#" style="left: 180px"><img src="data:images/mp.png" /></a>
<a href="#" style="left: 240px"><img src="data:images/live.png" /></a>
<a href="#" style="left: 300px"><img src="data:images/outlook.png" /></a><div id="desktop"></div>
</div>

首先来看看开始菜单图标如何设置,通过Hover 操作变换start.bmp 显示位置,达到图标发亮效果。

#taskbar #start
{position: absolute;text-align: center;width: 57px;height: 46px;background: url(images/start.bmp) 0 -6px no-repeat;
}#taskbar #start:hover
{text-decoration: none;background-position: 0 -114px;
}

            

任务栏背景通过taskbarbg.png 实现,其他图标Hover 效果通过改变taskbarhover.png 图片位置实现图标下方高亮效果。

#taskbar
{height: 42px;width: 880px;margin: -42px 0 0 1px;background: url(images/taskbarbg.png) no-repeat;
}#taskbar img
{margin: 5px 0 0 0;width: 30px;height: 29px;
}#taskbar a
{position: absolute;text-align: center;width: 57px;height: 46px;background: url(images/taskbarhover.png) 0 -46px no-repeat;
}#taskbar a:hover
{background-position: 0 -3px;
}

开始菜单

对于开始菜单的设置可以参考之前提到的那篇文章,本篇在其基础上添加了菜单分割线及透明效果。

<div id="menuwin"><div id="startmenu"></div><ul id="programs"><li><a href="#"><img src="data:images/ie.png" />Internet Explorer</a></li><li><a href="#"><img src="data:images/mc.png" />Microsoft Media Center</a></li><li>
<div id="leftspliter"></div></li><li><a href="#"><img src="data:images/word.png" />Microsoft Word 2010</a></li><li><a href="#"><img src="data:images/excel.png" />Microsoft Excel 2010</a></li><li><a href="#"><img src="data:images/powerpoint.png" />Microsoft PowerPoint 2010</a></li><li><a href="#"><img src="data:images/access.png" />Microsoft Access 2010</a></li><li><a href="#"><img src="data:images/update.png" />Windows Update</a></li><li><div id="leftspliter"></div></li><li><a href="#"><img src="data:images/narrow.png" />All Programs</a></li><li><img id="search" src="data:images/search.png" /></li></ul><ul id="links"><li class="icon"><img src="data:images/user.png" /></li><li><a href="#"><span>Documents</span></a></li><li><a href="#"><span>Pictures</span></a></li><li><a href="#"><span>Music</span></a></li><li><div id="rightspliter"></div></li><li><a href="#"><span>Games</span></a></li><li><a href="#"><span>Computer</span></a></li><li><div id="rightspliter"></div></li><li><a href="#"><span>Control Panel</span></a></li><li><a href="#"><span>Devices and Printers</span></a></li><li><a href="#"><span>Default Programs</span></a></li></ul>
</div>

开始菜单通过opacity 设置其透明度:

#startmenu
{border: solid 1px #102a3e;overflow: visible;display: block;float: left;height: 404px;width: 400px;opacity: 0.9;-webkit-border-radius: 5px;position: absolute;box-shadow: inset 0 0 1px #ffffff;-webkit-box-shadow: inset 0 0 1px #ffffff;background-color: #619bb9;background: -webkit-gradient(linear, center top, center bottom, from(#327aa4),color-stop(45%, #2e4b5a), to(#5cb0dc));
}

通过jQuery(common.js) 完成开始菜单打开/关闭效果

$(document).ready(function () {$("#start").click(function () {$("#menuwin").css("display", "block");});$("#win").click(function () {$("#menuwin").css("display", "none");});$("#desktop").click(function () {$("#menuwin").css("display", "none");});
});

源代码下载

请使用Chrome 浏览

本文转自Gnie博客园博客,原文链接:http://www.cnblogs.com/gnielee/archive/2010/06/17/html-css-windows7-desktop.html,如需转载请自行联系原作者

HTML+CSS 模仿Windows 7 桌面效果相关推荐

  1. html中图片亮度调节,HTML+CSS+JS 模仿 Win10 亮度调节效果

    HTML+CSS+JS模仿win10亮度调节效果 代码 模仿win10的亮度调节 .control_bar{ height:200px; width:500px; border-bottom:3px ...

  2. html的window效果,HTML+CSS+JS模仿win10亮度调节效果

    HTML+CSS+JS模仿win10亮度调节效果 代码 模仿win10的亮度调节 .control_bar{ height:200px; width:500px; border-bottom:3px ...

  3. html中亮度怎么写,HTML+CSS+JS模仿win10亮度调节效果的示例代码

    HTML+CSS+JS模仿win10亮度调节效果 代码 模仿win10的亮度调节 .control_bar{ height:200px; width:500px; border-bottom:3px ...

  4. 为什么国产操作系统要基于linux,解说国产Linux操作系统为什么都模仿Windows桌面...

    目前大多数国产Linux操作系统的桌面都和微软的Windows桌面非常类似,相信很多人都有这个疑问,为什么多数国产Linux操作系统都在模仿Windows桌面?而不是独有的界面风格呢? 下面来看两张国 ...

  5. H5+JS+CSS模仿JD商品详情页放大镜效果

    源码下载:H5+JS+CSS模仿JD商品详情页放大镜效果-Javascript文档类资源-CSDN下载适合小白模仿的H5+JS+CSS模仿JD商品详情页放大镜效果,可以熟练掌握鼠标经过和鼠标移动事件更 ...

  6. 模仿一个球落地效果,最终停在地面上(仿真效果,CSS实现)

    模仿一个球落地效果,最终停在地面上(仿真效果,CSS实现) 效果图 制作步骤 先准备个球和一个地面 给球准备动效 再给些曲线运动的效果 完整代码 本博客其他文章推荐 效果图 制作步骤 先准备个球和一个 ...

  7. 如何用 CSS + HTML + JS 创建桌面应用

    05月 31 Node 如何用 CSS + HTML + JS 创建桌面应用 | https://h.lishaoy.net/nwjsElectronjs.html || 最近研究了一下基于 Chro ...

  8. windows xp 超级模仿windows Vista全攻略 一模一样的感觉

    windows xp 超级模仿windows Vista全攻略 一模一样的感觉 前不久,微软发布了其最新版操作系统Windows Vista.相比以前版本,新系统在很多方面都进行了大幅度改进.但要说最 ...

  9. HTML模仿win10亮度调节效果

    HTML+CSS+JS模仿win10亮度调节效果 代码 <!doctype html> <html><head><meta charset="utf ...

最新文章

  1. 算法战争:美国国家AI安全委员会要建立AI大学,「数字服务学院」为政府培养AI人才...
  2. 大学计算机基础知识点_自学录——大学计算机基础
  3. C/C++中memset()函数
  4. Effective Java之避免使用终结方法(七)
  5. Linux程序之触摸,linux 触摸屏驱动编写
  6. 将本地项目上传到码云(gitee)远程仓库
  7. 深度学习在计算机视觉点云中的发展与未来
  8. java printwriter 没有关闭_Java PrintWriter close()方法
  9. Ajax datatype:'JSON'的error问题Status1:200,JSON格式
  10. VSCode在文件顶部添加作者,时间和注释等信息
  11. 程序员面试金典——11.6矩阵元素查找
  12. prolog初学语法结构
  13. input 上传图片_selnium远程机上传图片遇到的坑-布布扣
  14. 如何快速更换ip地址?
  15. 视频教程 C语言全套视频教程(已更新完毕
  16. AR路由器通过web及代码实现公网用户使用公网地址访问内网服务器,同时内网用户实现通过公网地址访问内外那个服务器
  17. 医院病历的中英文翻译,医生病历本翻译
  18. mathcad 15.0安装教程
  19. 你应该了解的 MySQL 细节
  20. mysql 多表查询练习题(一)数据准备

热门文章

  1. map.setTerrain is not a function
  2. gitee创建ssh公钥
  3. 电脑上玩和平精英_和平精英奇幻之旅怎么玩-和平精英奇幻之旅玩法攻略
  4. java runtime 清屏_【图片】请问java编写中如何做到清屏啊。。。_java吧_百度贴吧...
  5. verilog 简单module_HDLBits:在线学习 Verilog (二十九 · Problem 140-144)
  6. ajax请求传递参数的方式,Ajax请求 一般处理程序参数传递的几种方式
  7. 学java编程语言_对于零基础的人而言 该如何学Java编程语言
  8. html 属性存储对象,在HTML5 localStorage中存储对象
  9. 数组的最长递减子序列java_求一个数组的最长递减子序列 比如{9,4,3,2,5,4,3,2}的最长递减子序列为{9,5,4,3,2}...
  10. mysql数据表设计 对应成二维数组_结果集数据怎么转换成二维数组