【转载】HTML+CSS 模仿Windows 7 桌面效果

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

桌面程序鼠标Hover 效果:

任务栏程序鼠标Hover 效果:

开始菜单效果:

桌面程序图标

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

<div id="win">
    <ul id="app">
        <li>            <a href="#">
            <img src="images/computer.png"><br />
            Computer</a>        </li>
        <li>            <a href="#">
            <img src="images/recycle.png"><br />
            Recycle Bin</a>        </li>
        <li>            <a href="#">
            <img src="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="images/ie.png" />
    </a>    <a href="#" style="left: 120px">
        <img src="images/library.png" />
    </a>    <a href="#" style="left: 180px">
        <img src="images/mp.png" />
    </a>    <a href="#" style="left: 240px">
        <img src="images/live.png" />
    </a>    <a href="#" style="left: 300px">
        <img src="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="images/ie.png" />Internet Explorer</a></li>
        <li><a href="#">
            <img src="images/mc.png" />Microsoft Media Center</a></li>
        <li>            <div id="leftspliter"></div></li>
        <li><a href="#">
            <img src="images/word.png" />Microsoft Word 2010</a></li>
        <li><a href="#">
            <img src="images/excel.png" />Microsoft Excel 2010</a></li>
        <li><a href="#">
            <img src="images/powerpoint.png" />Microsoft PowerPoint 2010</a></li>
        <li><a href="#">
            <img src="images/access.png" />Microsoft Access 2010</a></li>
        <li><a href="#">
            <img src="images/update.png" />Windows Update</a></li>
        <li>
            <div id="leftspliter"></div></li>
        <li><a href="#">
            <img src="images/narrow.png" />All Programs</a></li>
        <li>
            <img id="search" src="images/search.png" /></li>
    </ul>
    <ul id="links">
        <li class="icon"><img src="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 浏览

【转载】HTML+CSS 模仿Windows 7 桌面效果

时间: 2024-10-11 20:32:09

【转载】HTML+CSS 模仿Windows 7 桌面效果的相关文章

转载 【CSS进阶】伪元素的妙用--单标签之美

1.单个颜色实现按钮 hover .active 的明暗变化 请点击 转载利用伪元素单个颜色实现 hover 和 active 时的明暗变化效果 2.利用after伪类清除浮动 .clearfix:after {content:"."; display:block; height:0; visibility:hidden; clear:both; } .clearfix { *zoom:1; } 3.增强用户体验,使用伪元素实现增大点击热区.适合用在点击区域较小的移动端,PC端看上去是

windows之桌面程序引导功能

经常使用windows系统的同学可能都会遇到这样一种情况,刚按照完的应用程序,可能会在桌面产生一个提示信息,指示当前快捷方式可以使用了,并给出相应的文字说明,指示该快捷方式的功能.那么大家有没有考虑过这供功能是怎么实现的呢,使用一般的窗口spy工具应该都能抓取windows系统桌面使用的窗口类,我使用彗星小助手抓取了下,效果如图1所示.原来windows桌面窗口是一个listview,那么问题就变得简单了,我们只需要拿到窗口句柄,并向其发送消息LVM_GETITEMCOUNT消息,获取到窗口it

树莓派进阶之路 (024) - windows远程桌面连接树莓派通过xrdp服务(转)

本文转载:http://www.cnblogs.com/edgexie/p/6527992.html 在网上看到很多关于windows远程桌面连接树莓派的教程.我也按照教程试过了,遇到了几个坑.特意记录在这. 先说正确的步骤. 1. 必须先安装tightvncserver!!! sudo apt-get install tightvncserver 2. 再安装xrdp服务. sudo apt-get install xrdp 3. 如果开着防火墙ufw , 那么打开服务器上的远程桌面访问端口

用html+css+js实现选项卡切换效果

文章转载自:http://tongling.github.io/JSCards/ 用html+css+js实现选项卡切换效果 使用之前学过的综合知识,实现一个新闻门户网站上的常见选项卡效果: 文字素材: 房产: 275万购昌平邻铁三居 总价20万买一居 200万内购五环三居 140万安家东三环 北京首现零首付楼盘 53万购东5环50平 京楼盘直降5000 中信府 公园楼王现房 家居: 40平出租屋大改造 美少女的混搭小窝 经典清新简欧爱家 90平老房焕发新生 新中式的酷色温情 66平撞色活泼家居

windows 触发桌面图标布局保存

问题: 项目原有的一套结构由于引进了一个磁盘套件,类似于关闭系统的explorer.exe进程,进入到他所维护的explorer.exe中.于是出现了当退出磁盘的时候没有保存好桌面布局信息导致下次进入的时候磁盘中的桌面信息又变成初始化的状态了. 这里分析后问题所在就是没有提供自动保存桌面信息的机制,所以磁盘退出的时候没有将说面事实状态信息保存到注册表. 解决过程: 查阅资料知道,Windows将桌面布局信息都在注册表\HKEY_CURRENT_USER\SoftWare\Microsoft\Wi

自动记录Windows远程桌面连接的登录IP

声明 作者:昨夜星辰 博客:http://yestreenstars.blog.51cto.com/ 本文由本人创作,如需转载,请注明出处,谢谢合作! 目的 自动记录Windows远程桌面连接的登录IP. 环境 系统:Windows Server 2003 步骤 1.新建C:/RDP目录: 2.新建C:/RDP/RDPlog.txt文件: 3.新建C:/RDP/RDPlog.bat文件并添加以下内容: date /t >>RDPlog.txt time /t >>RDPlog.tx

jqm选项卡开发,底部标签式设计,jqm模仿iPhone手机桌面菜单,jqm实战开发,jqm开发例子Demo

我有一个水货的上司,大家都是知道的.所以我就只能自学了,今天我给大家带来的是jQuery Mobile 模仿iphone 手机桌面的选项卡功能.比如电话,短信,浏览器,音乐的标签菜单.好吧,直接上代码: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>jQuery Mobile模仿iphone菜单项</title

CSS实现的重叠线效果

<!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8"> <title>CSS实现的重叠线效果丨</title> <style type="text/css"> *{padding:0;margin:0;}/*demo偷懒充值样式,实际项目切勿模仿*/ .line{border-bottom

模仿轮播图效果

<!doctype html><html lang="zh"><head> <meta charset="UTF-8"> <title>手写轮播图效果</title> <style> #imgsDiv{position: relative;height: 400px;} .picDiv{ position: absolute; top:0; left:0; width:100%; h