用css来写一个背景图片的切换

代码如下:

<!DOCTYPE HTML>
<htmllang="en-US">
<head>
    <meta charset="UTF-8">
    <title>CSS3 Full Background Slider </title>
    <style type="text/css">
        /*字体效果*/
        @import url("http://www.w3cplus.com/demo/css3/base.css");
        @import url("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: 0;
            z-index:1;
            -webkit-transform: translateX(-0);
            -moz-transform: translateX(-0);
            -o-transform: translateX(-0);
            -ms-transform: translateX(-0);
        }
        /*设置背景图片从左向右移入显示的动画效果*/
        /* 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 li:nth-of-type(1) a{
            background-color: #02646e;
        }
        .slider li:nth-of-type(2) a{
            background-color: #eb0837;
        }
        .slider li:nth-of-type(3) a{
            background-color: #67b374;
        }
        .slider li:nth-of-type(4) a{
            background-color: #e6674a;
        }
        .slider li:nth-of-type(5) a{
            background-color: #e61061;
        }
        /*任务二、设置缩略图形状*/
        .slider li:nth-of-type(n) a::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;
        }
        /*任务三、设置缩略图背景图像*/
        li:nth-of-type(1) a::after{
            background: url(http://www.w3cplus.com/demo/css3/CSS3Fullbackground/sbg1.jpg) no-repeat center;
        }
        li:nth-of-type(2) a::after{
            background: url(http://www.w3cplus.com/demo/css3/CSS3Fullbackground/sbg2.jpg) no-repeat center;
        }
        li:nth-of-type(3) a::after{
            background: url(http://www.w3cplus.com/demo/css3/CSS3Fullbackground/sbg3.jpg) no-repeat center;
        }
        li:nth-of-type(4) a::after{
            background: url(http://www.w3cplus.com/demo/css3/CSS3Fullbackground/sbg4.jpg) no-repeat center;
        }
        li:nth-of-type(5) a::after{
            background: url(http://www.w3cplus.com/demo/css3/CSS3Fullbackground/sbg5.jpg) no-repeat center;
        }
        /*任务四、给缩略图添加蒙板效果*/
        .slider li:nth-of-type(n) a::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);
        }
        /*任务五、鼠标悬浮时,修改缩略图蒙板透明度*/
        a: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-10-21 10:25:01

用css来写一个背景图片的切换的相关文章

css网页中设置背景图片的方法详解

css网页中设置背景图片的方法详解 在css代码中设置背景图片的方法,包括背景图片.背景重复.背景固定.背景定位等 用css设置网页中的背景图片,主要有如下几个属性: 1,背景颜色 {background-color:数值}2,背景图片 {background-image: url(URL)|none}3,背景重复 {background-repeat:inherit|no-repeat|repeat|repeat-x|repeat-y}4,背景固定 {background-attachment

2014年辛星解读CSS第八节 使用背景图片

这应该是系统CSS的教程的最后一节了,为什么呢,因为到这一节,我感觉基础知识就已经讲完了,接下来的就是无穷的实战,而实战是很难用知识去讲出来的,靠的是积累,拼的是经验,这些都不是讲出来的. 好,我们下面来说一下用CSS添加背景图片的方式把,它在background属性中指定,可以用url("图片路径")的方式来指定背景图片,如果是repeat,则图片在横向和纵向上平铺,如果是no-repeat,则背景图像不会平铺,只显示一次,如果是repeat-x,那么就在水平方向平铺,如果是repe

Android 自己写一个打开图片的Activity

根据记忆中eoe的Intent相关视频,模仿,写一个打开图片的Activity 1.在主Activity的button时间中,通过设置action.category.data打开一个图片.这时代码已经可以运行,将使用系统默认的工具打开图片. Intent intentImage = new Intent(Intent.ACTION_VIEW); intentImage.addCategory(Intent.CATEGORY_DEFAULT); File file = new File("/sto

laravel项目中css样式表的背景图片不显示

刚学laravel,遇到了很多坑,感觉laravel是挺强大的. 建好后台项目,奈何css样式表的背景图片不显示 .mainhd { background: url(../images/sky/body_bg.png) repeat-x 0px 0px; } 按理上面的写法没错,因为是从别的后台搬过来的,但是图片一直不显示,访问绝对路径却又能显示图片,坑. 原因是因为图片路径要使用单引号或者双引号的,下面是正确的写法 .mainhd { background: url('../images/sk

swift 需求: 导航栏和HeaderView 使用一个背景图片。

问题界面 需求: 导航栏和HeaderView 使用一个背景图片.解决方案: 让 导航栏 变成透明. override func viewWillAppear(_ animated: Bool) { super.viewWillAppear(animated) // 1.设置导航栏半透明 self.navigationController?.navigationBar.isTranslucent = true // 2.设置导航栏背景图片 self.navigationController?.n

如果写一个android桌面滑动切换屏幕的控件(二)

在viewgroup执行: public void snapToScreen(int whichScreen) { whichScreen = Math.max(0, Math.min(whichScreen, getChildCount() - 1)); boolean changingScreens = whichScreen != mCurrentScreen; mNextScreen = whichScreen; int mScrollX = this.getScrollX(); fin

如果写一个android桌面滑动切换屏幕的控件(三)

下面我们把这个控件内嵌到Layout中做一些动画和展示,效果图: 这个子控件可以上下移动,可以左右滑动,如果上下滑动距离大于左右滑动距离,则必须上下滑动 这样来写onTouch事件: @Override public boolean onTouchEvent(MotionEvent ev) { if (mVelocityTracker == null) { mVelocityTracker = VelocityTracker.obtain(); } mVelocityTracker.addMov

如果写一个android桌面滑动切换屏幕的控件(一)

首先这个控件应该是继承ViewGroup: 初始化: public class MyGroup extends ViewGroup{ private Scroller mScroller; private float mOriMotionX; private float mLastMotionX; private VelocityTracker mVelocityTracker; private int mTouchState = TOUCH_STATE_REST; private static

【CSS学习笔记】背景图片

直接看代码: background: blue; /*页面背景为蓝色,很简单的代码*/background-image:url(small.jpg); /*页面背景是名字叫small.jpg的图片*/background-repeat: no-repeat; /*水平方向显示图片repeat-x 竖直方向显示图片repeat-y 不重复图片no-repeat*/ background-attachment: fixed; /*在页面特别长有滚动条时,可以固定图片*/ 相关知识点: 1.背景图与背