切换背景图像综合练习题

练习题:

根据所学知识,使用CSS3知识,实现背景图片的切换效果(不依赖js,点击小图切换大的背景图)

任务

给每个列表定义不同的背景颜色

提示:使用结构伪类选择器:nth-of-type()

设置缩略图外形效果

提示:使用伪元素::after制作圆形效果

1、给每个缩略图设置不同的图片

提示:使用伪结构选择器:nth-of-type(),并且配合::after

2、给每个缩略图添加透明度蒙板效果

提示:使用伪类选择器::before给缩略图添加蒙板效果

3、鼠标悬浮在缩略图上时,修改缩略图上蒙板的透明度

提示:通过:hover和::before配合修改opacity的值为0

4、点击缩略图,切换背景图片

提示:通过目标选择器:target进行背景图片的切换

5、控制不是被点击图片的层级大小,让其不显示

提示:通过“否定选择器:not()”和“目标选择器:target”来控制不是被切换的背景图像不显示

代码:

<!DOCTYPE HTML>
<htmllang="en-US">
    <head>
        <meta charset="UTF-8">
        <title>CSS3 Full Background Slider </title>
        <style type="text/css">
            @importurl("http://www.w3cplus.com/demo/css3/base.css");
            @importurl("http://fonts.googleapis.com/css?family=Yesteryear");
            html,body {
            height: 100%;
            }
            /*设置背景图片全屏显示,并且居中*/
            img.bg {
            min-height: 100%;
            min-width: 1024px;
            width: 100%;
            height: auto !important;
            height: 100%;
            position: fixed;
            top: 0;
            left: 50%;
            z-index:1;
              -webkit-transform: translateX(-50%);
              -moz-transform: translateX(-50%);
              -o-transform: translateX(-50%);
              -ms-transform: translateX(-50%);
            }
            /*设置背景图片从左向右移入显示的动画效果*/
            /* Slide Left */

            @-webkit-keyframes ‘slideLeft‘ {
                0% { left: -500px; }
                100% { left: 0; }
            }
            @-moz-keyframes ‘slideLeft‘ {
                0% { left: -500px; }
                100% { left: 0; }
            }
            @-o-keyframes ‘slideLeft‘ {
                0% { left: -500px; }
                100% { left: 0; }
            }
            @-ms-keyframes ‘slideLeft‘ {
                0% { left: -500px; }
                100% { left: 0; }
            }
            @keyframes ‘slideLeft‘ {
                0% { left: -500px; }
                100% { left: 0; }
            }
            /*设置背景图像从底部向顶部移入的动画效果*/
             /* Slide Bottom */

            @-webkit-keyframes ‘slideBottom‘ {
                0% { top: 350px; }
                100% { top: 0; }
            }
            @-moz-keyframes ‘slideBottom‘ {
                0% { top: 350px; }
                100% { top: 0; }
            }
            @-ms-keyframes ‘slideBottom‘ {
                0% { top: 350px; }
                100% { top: 0; }
            }
            @-o-keyframes ‘slideBottom‘ {
                0% { top: 350px; }
                100% { top: 0; }
            }
            @keyframes ‘slideBottom‘ {
                0% { top: 350px; }
                100% { top: 0; }
            }
            /*设置背景图片由小到大放大动画效果*/
            /* Zoom In */

            @-webkit-keyframes ‘zoomIn‘ {
                0% { -webkit-transform: scale(0.1); }
                100% { -webkit-transform: none; }
            }
            @-moz-keyframes ‘zoomIn‘ {
                0% { -moz-transform: scale(0.1); }
                100% { -moz-transform: none; }
            }
            @-ms-keyframes ‘zoomIn‘ {
                0% { -ms-transform: scale(0.1); }
                100% { -ms-transform: none; }
            }
            @-o-keyframes ‘zoomIn‘ {
                0% { -o-transform: scale(0.1); }
                100% { -o-transform: none; }
            }
            @keyframes ‘zoomIn‘ {
                0% { transform: scale(0.1); }
                100% { transform: none; }
            }
            /*设置背景图像由大到小缩小动画效果*/
            /* Zoom Out */

            @-webkit-keyframes ‘zoomOut‘ {
                0% { -webkit-transform: scale(2); }
                100% { -webkit-transform: none; }
            }
            @-moz-keyframes ‘zoomOut‘ {
                0% { -moz-transform: scale(2); }
                100% { -moz-transform: none; }
            }
            @-ms-keyframes ‘zoomOut‘ {
                0% { -ms-transform: scale(2); }
                100% { -ms-transform: none; }
            }
            @-o-keyframes ‘zoomOut‘ {
                0% { -o-transform: scale(2); }
                100% { -o-transform: none; }
            }
            @keyframes ‘zoomOut‘ {
                0% { transform: scale(2); }
                100% { transform: none; }
            }
            /*背景图像旋转出现动画效果*/
            /* Rotate */

            @-webkit-keyframes ‘rotate‘ {
                0% { -webkit-transform: rotate(-360deg) scale(0.1); }
                100% { -webkit-transform: none; }
            }
            @-moz-keyframes ‘rotate‘ {
                0% { -moz-transform: rotate(-360deg) scale(0.1); }
                100% { -moz-transform: none; }
            }
            @-ms-keyframes ‘rotate‘ {
                0% { -ms-transform: rotate(-360deg) scale(0.1); }
                100% { -ms-transform: none; }
            }
            @-o-keyframes ‘rotate‘ {
                0% { -o-transform: rotate(-360deg) scale(0.1); }
                100% { -o-transform: none; }
            }
            @keyframes ‘rotate‘ {
                0% { transform: rotate(-360deg) scale(0.1); }
                100% { transform: none; }
            }
            /*设置背景图像不显示动画效果*/
            @-webkit-keyframes ‘notTarget‘ {
                0% { z-index: 75; }
                100% { z-index: 75; }
            }
            @-moz-keyframes ‘notTarget‘ {
                0% { z-index: 75; }
                100% { z-index: 75; }
            }
            @-ms-keyframes ‘notTarget‘ {
                0% { z-index: 75; }
                100% { z-index: 75; }
            }
            @-o-keyframes ‘notTarget‘ {
                0% { z-index: 75; }
                100% { z-index: 75; }
            }
            @keyframes ‘notTarget‘ {
                0% { z-index: 75; }
                100% { z-index: 75; }
            }

            .slider {
            position: absolute;
            width: 100%;
            text-align: center;
            z-index: 9999;
            bottom: 100px;
            }
            .slider li {
            display: inline-block;
            width: 170px;
            height: 130px;
            margin-right: 15px;
            }
            .slider a {
            display: inline-block;
            width: 170px;
            padding-top: 70px;
            padding-bottom: 20px;
            position: relative;
            cursor: pointer;
            border: 2px solid #fff;
            border-radius: 5px;
            vertical-align: top;
            color: #fff;
            text-decoration: none;
            font-size: 22px;
            font-family: ‘Yesteryear‘, cursive;
            text-shadow: -1px -1px 1px rgba(0, 0, 0, 0.8),-2px -2px 1px rgba(0, 0, 0, 0.3),-3px -3px 1px rgba(0, 0, 0, 0.3);
            }
            /*任务一、设置不同列表的背景色*/
            .slider ul li:nth-of-type(1) a{
            background-color: #02646e;
            }
            .slider ul li:nth-of-type(2) a{
            background-color: #eb0837;
            }
            .slider ul li:nth-of-type(3) a{
            background-color: #67b374;
            }
            .slider ul li:nth-of-type(4) a{
            background-color: #e6674a;
            }
            .slider ul li:nth-of-type(5) a{
            background-color: #e61061;
            }
            /*任务二、设置缩略图形状*/
            .slider ul li ::after{
            content:"";
            display: block;
            height: 120px;
            width: 120px;
            border: 5px solid #fff;
            border-radius: 50%;
            position: absolute;
            left: 50%;
            margin-left: -60px;
            z-index: 9999;
            top: -80px;
            }
            /*任务三、设置缩略图背景图像*/
            .slider ul li:nth-of-type(1) ::after{
            background: url(http://www.w3cplus.com/demo/css3/CSS3Fullbackground/sbg1.jpg) no-repeat center;
            }
            .slider ul li:nth-of-type(2) ::after{
            background: url(http://www.w3cplus.com/demo/css3/CSS3Fullbackground/sbg2.jpg) no-repeat center;
            }
            .slider ul li:nth-of-type(3) ::after{
            background: url(http://www.w3cplus.com/demo/css3/CSS3Fullbackground/sbg3.jpg) no-repeat center;
            }
            .slider ul li:nth-of-type(4) ::after{
            background: url(http://www.w3cplus.com/demo/css3/CSS3Fullbackground/sbg4.jpg) no-repeat center;
            }
            .slider ul li:nth-of-type(5) ::after{
            background: url(http://www.w3cplus.com/demo/css3/CSS3Fullbackground/sbg5.jpg) no-repeat center;
            }
            /*任务四、给缩略图添加蒙板效果*/
            .slider ul li ::before{
            content:"";
            display: block;
            height: 120px;
            width: 120px;
            border: 5px solid #fff;
            border-radius: 50%;
            position: absolute;
            left: 50%;
            margin-left: -60px;
            z-index: 99999;
            top: -80px;
            background: rgba(0,0,0,0.3);
            }
            /*任务五、鼠标悬浮时,修改缩略图蒙板透明度*/
            .slider ul li:hover ::before{
            opacity:0;
            }
            /*任务六、点击综略图,切换背景图*/
            /*背景图从左向右出现*/
            .slideLeft:target{
                z-index: 100;
                -webkit-animation-name: slideLeft;
                -webkit-animation-duration: 1s;
                -webkit-animation-iteration-count: 1;
                -moz-animation-name: slideLeft;
                -moz-animation-duration: 1s;
                -moz-animation-iteration-count: 1;
                -ms-animation-name: slideLeft;
                -ms-animation-duration: 1s;
                -ms-animation-iteration-count: 1;
                -o-animation-name: slideLeft;
                -o-animation-duration: 1s;
                -o-animation-iteration-count: 1;
                animation-name: slideLeft;
                animation-duration: 1s;
                animation-iteration-count: 1;
            }
            /*背景图从下向上出现*/
            .slideBottom:target{
                z-index: 100;

                -webkit-animation-name: slideBottom;
                -webkit-animation-duration: 1s;
                -webkit-animation-iteration-count: 1;
                -moz-animation-name: slideBottom;
                -moz-animation-duration: 1s;
                -moz-animation-iteration-count: 1;
                -ms-animation-name: slideBottom;
                -ms-animation-duration: 1s;
                -ms-animation-iteration-count: 1;
                -o-animation-name: slideBottom;
                -o-animation-duration: 1s;
                -o-animation-iteration-count: 1;
            animation-name: slideBottom;
                animation-duration: 1s;
                animation-iteration-count: 1;
            }
            /*背景图由小到大出现*/
            .zoomIn:target{
                z-index: 100;
                -webkit-animation-name: zoomIn;
                -webkit-animation-duration: 1s;
                -webkit-animation-iteration-count: 1;
                -moz-animation-name: zoomIn;
                -moz-animation-duration: 1s;
                -moz-animation-iteration-count: 1;
                -ms-animation-name: zoomIn;
                -ms-animation-duration: 1s;
                -ms-animation-iteration-count: 1;
                -o-animation-name: zoomIn;
                -o-animation-duration: 1s;
                -o-animation-iteration-count: 1;
                animation-name: zoomIn;
                animation-duration: 1s;
                animation-iteration-count: 1;
            }

            /*背景图由大到小出现*/
            .zoomOut:target{
                z-index: 100;
                -webkit-animation-name: zoomOut;
                -webkit-animation-duration: 1s;
                -webkit-animation-iteration-count: 1;
                -moz-animation-name: zoomOut;
                -moz-animation-duration: 1s;
                -moz-animation-iteration-count: 1;
                -ms-animation-name: zoomOut;
                -ms-animation-duration: 1s;
                -ms-animation-iteration-count: 1;
                -o-animation-name: zoomOut;
                -o-animation-duration: 1s;
                -o-animation-iteration-count: 1;
                animation-name: zoomOut;
                animation-duration: 1s;
                animation-iteration-count: 1;
            }

            /*背景图旋转出现*/
            .rotate:target{
                z-index: 100;
                -webkit-animation-name: rotate;
                -webkit-animation-duration: 1s;
                -webkit-animation-iteration-count: 1;
                -moz-animation-name: rotate;
                -moz-animation-duration: 1s;
                -moz-animation-iteration-count: 1;
                -ms-animation-name: rotate;
                -ms-animation-duration: 1s;
                -ms-animation-iteration-count: 1;
                -o-animation-name: rotate;
                -o-animation-duration: 1s;
                -o-animation-iteration-count: 1;
                animation-name: rotate;
                animation-duration: 1s;
                animation-iteration-count: 1;
            }
            /*任务七、设置不显示的背景图层级*/
            /* Not Target */

            bg:not(:target){
                -webkit-animation-name: notTarget;
                -webkit-animation-duration: 1s;
                -webkit-animation-iteration-count: 1;
                -moz-animation-name: notTarget;
                -moz-animation-duration: 1s;
                -moz-animation-iteration-count: 1;
                -ms-animation-name: notTarget;
                -ms-animation-duration: 1s;
                -ms-animation-iteration-count: 1;
                -o-animation-name: notTarget;
                -o-animation-duration: 1s;
                -o-animation-iteration-count: 1;
                animation-name: notTarget;
                animation-duration: 1s;
                animation-iteration-count: 1;
            }
        </style>
    </head>
    <body>
        <div class="slider">
            <ul class="clearfix">
                <li><a href="#bg1">Hipster Fashion Haircut </a></li>
                <li><a href="#bg2">Cloud Computing Services &amp; Consulting</a></li>
                <li><a href="#bg3">My haire is sooo fantastic!</a></li>
                <li><a href="#bg4">Eat healthy &amp; excersice!</a></li>
                <li><a href="#bg5">Lips so kissable I could die ...</a></li>
            </ul>
        </div>
        <img src="http://www.w3cplus.com/demo/css3/CSS3Fullbackground/bg1.jpg" alt="" class="bg slideLeft" id="bg1" />
        <img src="http://www.w3cplus.com/demo/css3/CSS3Fullbackground/bg2.jpg" alt="" class="bg slideBottom" id="bg2" />
        <img src="http://www.w3cplus.com/demo/css3/CSS3Fullbackground/bg3.jpg" alt="" class="bg zoomIn" id="bg3" />
        <img src="http://www.w3cplus.com/demo/css3/CSS3Fullbackground/bg4.jpg" alt="" class="bg zoomOut" id="bg4" />
        <img src="http://www.w3cplus.com/demo/css3/CSS3Fullbackground/bg5.jpg" alt="" class="bg rotate" id="bg5" />
    </body>
</html>
时间: 2024-11-07 04:49:16

切换背景图像综合练习题的相关文章

CSS3背景 制作导航菜单综合练习题

CSS3背景 制作导航菜单综合练习题 小伙伴们,根据所学知识,使用CSS3实现下图的导航菜单效果 任务 1.制作导航圆角 提示:使用border-radius实现圆角 2.制作导航立体风格 提示:使用box-shadow实现立体风格 3.制作导航分隔线 提示:使用渐变与伪元素制作 4.删除第一个和最后一个导航分隔线 提示:使用伪元素删除第一个和最后一个分隔线 <!doctype html> <html lang="en"> <head> <me

全屏背景:15个jQuery插件实现全屏背景图像或媒体

动态网站通常利用背景图像或预加载屏幕,以保证所有资源都加载到页面上,在浏览器中充分呈现.现在很多网站都炫耀自己的图像作为背景图像全屏背景,追溯到旧的Flash网站却用自己的方式在HTML资源重布局. 本综述我们列出15最好的jQuery全屏背景图像的插件,可以帮助你增加你的图像到您的网站,让他们看起来惊人的美丽.这个插件创建一些华丽的背景,幻灯片,你的网站让他们美丽的动画和过渡. 1. MaxImage maximage 2.0是一个全屏背景slideshow utilizes jQuery的插

CSS:背景颜色/背景图像

使用CSS可以为html标签指定背景图像或背景颜色,并且可以设置图像的位置. 代码整理自w3school:http://www.w3school.com.cn <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <meta http-

背景图像坐标定位

实际上,如果没有发明image标签,可能就没有网页设计师这门职业. 然而对image标签的滥用可能导致纯修饰性的图像把页面弄乱.好在CSS使我们能够在页面上显示图像,而不需要让图像成为标记的一部分.实现方法是将图像作为背景添加到现有的元素中.  背景图像基础: 默认情况下,浏览器垂直和水平的重复显示背景图像,让图像平铺整个页面. 渐变效果:目前渐变非常时髦,你可能希望在页面上应用垂直渐变,为此需要创建一个很高但是很窄的渐变图像,然后将这个图像应用于页面的主体,并让他水平平铺. 因为这个渐变图像的

给网页添加背景图像总结

1.固定宽度和可变宽度的圆角框 方法一:适用于新型浏览器,直接用border-radius属性 方法二:适用于旧版浏览器,IE6等 对于固定宽度圆角框,需要有两个图像,一个图像用于框的顶部,一个用于框的底部. 对于可变宽度圆角框,需用到滑动门技术(随着框尺寸的增加,大图像有更多的部分显露出来,这样就实现了框扩展的效果),这个方法需用到四个图像(top-left,top-right,bottom-left,bottom-right),bottom-left应用于主框div,bottom-right

点击之后变色,还切换背景

1,新建xml文件存放到drawble目录下 切换颜色 <?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:color="@color/black" android:state_checked="t

一个简单且丑陋的js切换背景图片基础示例

不多说,直接上代码,非常基础的一个原生js切换元素背景图片范例 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>原生JS范例</title> <script type="text/javascript"> function changeBg()

css控制背景图像不随滚动条的滚动而滚动

这几天在写一个demo,设置背景图像, background: url("../images/bg.jpg") repeat ; 在使用 $(window).scroll(function() { ....}); 监听滚动条时,在google下正常运行,背景图像没有异常 在ie.360.火狐下滚动滚动条时,背景图像一闪一闪的,很难受. 百度:说需要调显示器的监视器的屏幕刷新频率 > 70 Hz . 可是我的电脑只有60Hz ,那么问题来了,很多小伙伴的电脑或许跟我的一样,那怎么办

CSS实现的鼠标经过链接切换背景图片实例代码

CSS实现的鼠标经过链接切换背景图片实例代码:很多导航栏都有这样的效果,当鼠标滑过的时候能够实现背景图片的切换,算是一个比较好的效果吧,也算是对导航栏最基本的美化了.代码实例如下: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="