(高分求救)在一个小div里放比div大的图片,要能拖拽臂式悬挂图片看到被掩藏的部分,并且,图片里有链接文字,

css3实现一个div设置多张背景图片及background-image属性
48799次浏览
以前做网页布局的时候,一个div只能设置一张背景图片,设置多个背景的话,要用多个div嵌套才能实现,这样兼容性比较好。若您的网站要求兼容浏览器低版本,建议用这种方法。css3的出现,解决了一个div只能设置一个背景的问题,使一个div可以设置多个背景图片。background-image还可以设置线性渐变,等效果。
关于css3的background,功能很强大,有很多属性,像background-size等等,这些属性都可以写一篇博客来讲述。关于css3background的其他属性,后面会出博客来单独讲述!
CSS3/CSS1 background-image 属性
background-image:&bg-image& [ , &bg-image& ]*
&bg-image& = none | &url& | &linear-gradient& | &radial-gradient& | &repeating-linear-gradient& | &repeating-radial-gradient&
默认值:none
none:无背景图。
& url &:使用绝对或相对地址指定背景图像。
& linear-gradient&:使用线性渐变创建背景图像。(CSS3)
& radial-gradient&:使用径向(放射性)渐变创建背景图像。(CSS3)
& repeating-linear-gradient&:使用重复的线性渐变创建背景图像。(CSS3)
& repeating-radial-gradient&:使用重复的径向(放射性)渐变创建背景图像。(CSS3)
设置或检索对象的背景图像。
如果设置了background-image,同时也建议作者设置background-color用于当背景图像不可见时保持与文本一定的对比。
对应的脚本特性为backgroundImage。
IE8及更早浏览器不支持CSS3 background-image,即不支持多背景和使用渐变作为背景图像。
IE9不支持CSS3新增参数值:& linear-gradient & | & radial-gradient & |& repeating-linear-gradient & | & repeating-radial-gradient &作为背景图像。
Opera11.50-11.51不支持CSS3新增参数值:& radial-gradient & |& repeating-radial-gradient &作为背景图像。
css3设置多张背景图片
css3设置多张背景图片,可以如下写:
background:url(&haoroomsCSS1_s.jpg&) 0 0 no-repeat,
url(&haoroomsCSS2_s.jpg&) 200px 0 no-repeat,
url(&haorooms.jpg&) 400px 201px no-
也可以这么写:
background-image:url(&1.jpg&),url(&2.jpg&),url(&3.jpg&);
background-repeat: no-repeat, no-repeat, no-
background-position: 0 0, 200px 0, 400px 201
css3背景渐变
background-image: linear-gradient(
[ &angle& | &side-or-corner& ,]? &color-stop& [, &color-stop&]+ );
上面这种CSS语法我们经常见到,可能有人看不懂具体的意思,其实上面的些符号含义与正则表达式有很多一致之处:
[]在正则中表示一个字符类,这里,你可以理解为一个小单元。
|表示候选。也就是“或者”的意思,要么前面的,要么就后面的。
?为量词,表示0个或1个,言外之意就是,你可以不指定方向,直接渐变色走起。例如:
background:linear-gradient(red, yellow);
就是从上往下的红黄条纹效果。
+也是量词,表示1个或者更多个。因此,终止颜色是不可缺少的。例如:linear-gradient(red)是酱油命,白板。
&&中的是关键字,主要是让开发人员知道这里应该放些什么内容。
{background-image:linear-gradient(left, red 100px, yellow 200px);}
效果如下图:
左上角渐变
那从(100px, 100px)到(200px, 200px)应该就是从左上角开始,写法如下:
{background-image:linear-gradient(left top, red 100px, yellow 200px);}
渐变方向写法组合:
left, right, top, bottom, left top, left bottom, right top, right, bottom
分别表示,从左往右,从右往左,从上往下,从下往上,从左上往右下,从……(都懂的,不全写了)
当然,也可以用angle角度来写!
{background-image:linear-gradient(-45deg, red 100px, yellow 200px);}
具体的样式大家可以尝试着写一下,看一下!很多情况下,用了才知道!
注意:有不少效果加了-webkit前缀以及-moz前缀会展现的不一样!
background-image:-webkit-linear-gradient(-45deg, red, yellow)
background-image:linear-gradient(-45deg, red, yellow)
在Chrome浏览器下的渐变方向居然是相反的!但是45deg是正常的。Firefox浏览器下也是如此,有前缀和没有前缀方向相反!咋回事?
原因很简单,CSS3目前还是草案阶段!
从浏览器去掉前缀前后的变化可以推测,之前,W3C的渐变坐标是与photoshop中一致的,但是,后来,由于某些原因,修改了。
至于什么原因,根据我草草的查找,可能与下面几个关键字之一有联系:animation/transition动画、write-mode书写方向、flex box模型、以及radial-gradient渐变等。在这里就不深入研究了!
基本的写法如下:
background-image: linear-gradient(top, #fff, #dededc);
但是为了兼容,有时候要写多个前缀,变成如下:
background-image: -ms-linear-gradient(top, #fff, #dededc);
background-image: -moz-linear-gradient(top, #fff, #dededc);
background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#dededc));
background-image: -webkit-linear-gradient(top, #fff, #dededc);
background-image: -o-linear-gradient(top, #fff, #dededc);
background-image: linear-gradient(top, #fff, #dededc);
关于”css3实现一个div设置多张背景图片及background-image属性“今天就写到这里,有问题可以相互交流,加油!
相关文章:
关键词搜索求高手推荐一个图片上下滑动的js!&要能实用 兼容大部分浏览器&_百度知道
求高手推荐一个图片上下滑动的js!&要能实用 兼容大部分浏览器&
Jshttp.Js&Js&左侧中心动态&nbsp<a href="/zhidao/wh%3D450%2C600/sign=9211edb38db1cb133e3c/5ab5c9ea15ce36daf33a87e850b1e2
head&&quot.0 Transitional/Description& &images///div class=&quot,&html xmlns=&quot.scrollLeft=0;//link rel=&/td&gt.style,title&#&quot.scrollLeft+3;);a&text/
var mn=&&gt,a.&#47,d)); charset=utf-8&
&lt.jpg&img src=&a href=&quot!DOCTYPE html PUBLIC &quot,
宋体;/;&;css&
var a=/a3;script type=&quot: function(t;/;td&2&a1;style type=&quot,h5{&#47, &div class=&&&
number[f]: duration(持续时间);&gt,b;undefined&/keywords&text&#47:12html;b;/
return c*(t/body& 1) return c//=d)*t*t*t +/#&p=n;&gt.getElementsByTagName(&
&lt.getElementById(&getout&quot.getElementById(&
&lt,&d-1)*t*t*t - 1) +&#47!DOCTYPE html PUBLIC &text/&执行函数tabchange
function change1(){
var f=0;&gt.css&css/a&
&/).innerHTML; content=&& /html&i& &/cc&bb&quot.className=&dd&//text/&&
function runr(){
var n= Mt;DTD XHTML 1;table&td&p id=&/td&/
var p=0;&d)
t=0,h2;a&addEventHandler(number[i];div& &&/style type=&meta http-equiv=&head&style& &&href=&quot.无间断滚动&lt.onmouseout=function()
f++;/p&div id=&quot.easeOut(t;
if (oa==number[i])
{ var i=i;
var pand=2& alt=&
&&quot.offsetWidth){
meta name=&quot,p;EN&&i&/images/
var Tween = {
Quart.jpg&&first&);/
if(t&&Content-Type&
&lt.className=&img src=&&随时把n的值传出去; & & alt=&
return -c/ &lt,
显示窗口的宽度,c;DTD XHTML 1.getElementById(&a href=&
clearTimeout(time),p
&& content=&
content=&script&移动量=到到达的位置-初始位置),b; alt=&quot.Qvar xtable= content=&/body&gt;d;/ &quot,c,a&图片&img src=&4&lt,A/div&html,因为每次运动中b值不能改变所以不能直接b=n;&gt.fd_words
;&mm&&= &#47,div:
&lt,h4;font-a4;
&getout&&&#47: beginning value(初始值/-//i++){
number[i];&images/1&EN&
function move(){
&).className=& href=&quot.scrollLeft:12px;
var w=328;div&
/ &&gt.getElementById(&quot,###&div id=&quot。
var div=document:&);tr&&
var t=0;////title&gt: change in value(变化量/
&a2;first&W3C/
var tt.onmouseover=function()
function change(oa){
for(i=0;&2*t*t*t*t + type=&meta http-equiv=&
& &meta name=&
tabchange();&&&gt,
easeOut.setInterval(图片&quot:0;pic&quot.scrollLeft=/title&2 * ((t-=2)*t*t*t - 2) +text/ content=&2) &/&quot:
html.setInterval(
&Description& &&W3C&#47;
&a&images/,3&
var number=
/3&&a&script type=&&gt: {
easeIn,c;& id=&quot,
 &lt,2000).getElementsByTagName(&/javascript&meta name=&meta name=&quot.onmouseout=function(){
tt=i&i++){
number[i];}
#getout table
#number : function(t;/ content=&body&)
function tabchange(){
for(var i=0,d){
if ((t&#47,function ());&//&lt.scrollLeft&
&lt,=d/ &&&/&text/;当前位置);css&stylesheet&quot.ceil(T###&quot,
&lt.innerHTML=a href=&quot: current time(当前时间);/title&div&gt: function(t;css&quot,h1;style&gt.getElementById(&dd&
var time1=setInterval(html&gt,td&a&//大图滚动&head&gt:&number&图片&&gt.first &i++){
/a href=&); &lt,b;//a&text//大图滚动.left =-n + &quot.pic
var c=f*w-b;img src=&
number[i];tr&gt?;
&fd_home&&td&}
function runn(){
if (typeof(time);;&fd_words&
if(f&#&/&/###&td&& &&html xmlns=&font-
function panduan(){
charset=utf-8& alt=&a class=&mouseover&quot,a;px&quot,c;)[0];
}.0 Transitional/a href=&head&/&/###&quot.jpg&quot.jpg&
change1();table id=&&#47,20),20);// &
function run(){
var d=30;&quot,;
var mm=document.onmouseover=function (){
clearInterval(tt),
return -c * ((t=t/div&gt:Tahoma,b;number&quot? 无间断滚动;body&gt.fd_home
.getElementById(&-&#47:0!=&
&div id=&script&
&lt, class=&#&quot,h3;first&number:a href=& line-javascript&初始步;bb&1&a href=&keywords&quot,&
var aa=4&/
&lt.onmouseover=function()
td& &lt;c;&&&#47.className=&
};&&Content-Type&图片&
aa无间断滚动还是大图滚动;/传递数组下标改变c参数的值
run();&多少步完成; /&cc& /
var xtable=/&&gt
其他类似问题
为您推荐:
其他2条回答
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁在一个div中有许多图片,所有小图片都要显示在大图片上方,如何用css精确定位小图片的位置呢?效果图如下
[问题点数:40分,结帖人zhou410527]
在一个div中有许多图片,所有小图片都要显示在大图片上方,如何用css精确定位小图片的位置呢?效果图如下
[问题点数:40分,结帖人zhou410527]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
2015年2月 总版技术专家分月排行榜第二
2015年2月 Web 开发大版内专家分月排行榜第一2015年1月 Web 开发大版内专家分月排行榜第一2014年12月 Web 开发大版内专家分月排行榜第一2014年11月 Web 开发大版内专家分月排行榜第一2014年10月 Web 开发大版内专家分月排行榜第一
2016年2月 总版技术专家分月排行榜第二2014年2月 总版技术专家分月排行榜第二2013年4月 总版技术专家分月排行榜第二
优秀小版主2015年7月优秀小版主2015年9月优秀小版主2015年5月优秀小版主2014年11月论坛优秀版主
匿名用户不能发表回复!|
每天回帖即可获得10分可用分!小技巧:
你还可以输入10000个字符
(Ctrl+Enter)
请遵守CSDN,不得违反国家法律法规。
转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。自适应高度的div里放置图片在下方会有一点空白距离,这是为何?_百度知道
自适应高度的div里放置图片在下方会有一点空白距离,这是为何?
这个属于img属性问题。img标签属于行变量标签,和文字一样,下面有一个字间距。&div style=&width:1400border:1px solid #999;&&&img style =&display:& src=&1.jpg& style=&width:100%&&&&#47;div&你对img属性,增加一个
即可去掉下面空白。
其他类似问题
为您推荐:
还有可能是某个属性继承了外面div的属性3,那我觉得应该就是 padding 或者 margin 的问题了; padding-bottom:0px。
你可以写一个margin-
2.这个div 宽+边框宽 大于外面的div:0px.浏览器不兼容4图片如果没有问题
div的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁DIV+CSS问题 题目是:有一个DIV层,在层里面插入了一个小图片,然后如何在CSS里面定义图片垂直居中._百度知道
DIV+CSS问题 题目是:有一个DIV层,在层里面插入了一个小图片,然后如何在CSS里面定义图片垂直居中.
pic&quot:#pic{div&gt,在层里面插入了一个小图片(高度只有50px);&gt:300&div id=&quot.页面代码比如;&hright.jpg&img src=&quot,然后如何在CSS里面定义图片垂直居中:980&CSS现有代码有题目是:有一个DIV层;&#47;aaa:&lt
提问者采纳
#pic img (img&&gt:lefr:xx像素:xx像素;margin-上下边距&margin-margin-top!!;另外一种方法就是把DIV 设置内边距可以尝试下吧:xx像素:xx像素;先把图片给浮动起来如!:auto;margin-)可以调试下设置图片&lt
提问者评价
我打到答案了,这个比较麻烦,不知道行不行,不过还是谢了
采纳率100%
其他类似问题
12人觉得有用
为您推荐:
div的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 拖拽臂式悬挂 的文章

 

随机推荐