扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
CSS+DIV是网站标准(或称“WEB标准”)中常用的术语之一,通常为了说明与HTML网页设计语言中的表格(table)定位方式的区别,因为XHTML网站设计标准中,不再使用表格定位技术,而是采用css+div的方式实现各种定位。
创新互联建站坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站设计、网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的牟平网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
CSS是英语Cascading Style Sheets(层叠样式表单)的缩写,它是一种用来表现 HTML 或 XML 等文件式样的计算机语言。
DIV元素是用来为HTML文档内大块(block-level)的内容提供结构和背景的元素。DIV的起始标签和结束标签之间的所有内容都是用来构成这个块的,其中所包含元素的特性由DIV标签的属性来控制,或者是通过使用样式表格式化这个块来进行控制。
div id="mContainer"/div
input class="btn" id="pauseBtn" onclick="doPause();" type="button" value="pause" /
建立一个层,设置id为mContainer,作为图片的容器层。
设置一个按钮来控制图片切换的暂停与继续。
我们看下面的CSS代码:
#mContainer {
width:225px;
position:relative;
height:168px;;
}
.mPhoto {
filter:Alpha(opacity=0);
left:0px;
position:absolute;
top:0px;
moz-opacity:0.0;
}
.btn {
border-right:#000 1px solid;
border-top:#000 1px solid;
margin-top:5px;
font-size:9px;
border-left:#000 1px solid;
width:40px;
border-bottom:#000 1px solid;
font-family:verdana;
}
这些代码我们都能看明白,需要指出的是类mPhoto的样式定义。
主要是应用了滤镜将图片的透明度设置为零,完全透明。
我们看下面的javascript脚本:
var currentPhoto = 0;
var secondPhoto = 1;
var currentOpacity = new Array();
var imageArray = new Array("1.jpg","2.jpg","3.jpg","4.jpg","5.jpg","6.jpg","7.jpg","8.jpg");
var FADE_STEP = 2;
var FADE_INTERVAL = 10;
var pause = false;
function init() {
currentOpacity[0]=99;
for(i=1;iimageArray.length;i++)currentOpacity[i]=0;
mHTML="";
for(i=0;iimageArray.length;i++)mHTML+="div id=\"photo\" name=\"photo\" class=\"mPhoto\"img src=\"" + imageArray[i] +"\"/div";
document.getElementById("mContainer").innerHTML = mHTML;
if(document.all) {
document.getElementsByName("photo")[currentPhoto].style.filter="alpha(opacity=100)";
} else {
document.getElementsByName("photo")[currentPhoto].style.MozOpacity = .99;
}
mInterval = setInterval("crossFade()",FADE_INTERVAL);
}
function crossFade() {
if(pause)return;
currentOpacity[currentPhoto]-=FADE_STEP;
currentOpacity[secondPhoto] += FADE_STEP;
if(document.all) {
document.getElementsByName("photo")[currentPhoto].style.filter = "alpha(opacity=" + currentOpacity[currentPhoto] + ")";
document.getElementsByName("photo")[secondPhoto].style.filter = "alpha(opacity=" + currentOpacity[secondPhoto] + ")";
} else {
document.getElementsByName("photo")[currentPhoto].style.MozOpacity = currentOpacity[currentPhoto]/100;
document.getElementsByName("photo")[secondPhoto].style.MozOpacity =currentOpacity[secondPhoto]/100;
}
if(currentOpacity[secondPhoto]/100=.98) {
currentPhoto = secondPhoto;
secondPhoto++;
if(secondPhoto == imageArray.length)secondPhoto=0;
pause = true;
xInterval = setTimeout("pause=false",2000);
}
}
function doPause() {
if(pause) {
pause = false;
document.getElementById("pauseBtn").value = "pause";
完全可以哦,滑动式的利用css的hover,也就是纯css菜单的原理,
点击式的利用的是锚点的原理。
实例如下:
!doctype html
html
head
meta charset="utf-8"
title纯CSS实现的Tab/title
style
*{ margin:0; padding:0;}
#main{width:500px; margin:100px auto;}
#titlea{ float:left; border:1px solid #000; padding:2px 4px; display:block; text-decoration:none; color:#000;}
#content{ width:500px; height:300px; border:1px solid #000; overflow:hidden;}
#contentdiv{float:left; padding:2px 4px; width:500px; height:300px;}
#a1:hover #a2#tab2{ display:block;}
/style
/head
body
div id="main"
div id="title"
a href="#tab1"tab1title/a
a href="#tab2"tab2title/a
a href="#tab3"tab3title/a
a href="#tab4"tab4title/a
div style="clear:both;"/div
/div
div id="content"
div id="tab1" tab1 content /div
div id="tab2" tab2 content /div
div id="tab3" tab3 content /div
div id="tab4" tab4 content /div
div style="clear:both;"/div
/div
/div
/body
/html
循环图片和按钮 都加上索引
然后给每个按钮加上事件
也就是说当点击第几个按钮就显示第几张图片。
那设置width:100%就行了。
还有,你的图片是IMG,还是背景,背景的话用CSS3新属性:background-size:100%
必须使用伪类与鼠标、键盘的行为互动。
如果这种也叫自动切换的话,那就有可能。
CSS3的话可以用动画间接做到。
图片添加个target鼠标触发事件,然后利用 transition过度属性就好
或者直接用过animation
调用@keyfroms动画就是了
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流