CSS 背景图拉伸 兼容 FF Chrome IE 等主流浏览器

飘逸的风11年前 (2015-03-20)前端6559

相信各位一定碰到过这种情况,按钮作为DIV的背景图来显示,实际上有多个这样的按钮,而且DIV中的文字,也就是按钮上要显示的文字内容和个数都不定,这种情况下就需要用背景图片拉伸效果来处理了,只需做一个按钮图片,作为DIV的背景图时随着DIV的宽度或高度自适应就OK了。网上也找过,但不兼容IE或有bug,下面贴出本人亲测代码,兼容主流浏览器,包括Firefox、Chrome以及 IE 等主流浏览器(IE使用滤镜效果实现):

.btn_bg {
	width:150px;
	height:50px;
	background-image:url(./btn.png);
	-moz-background-size: 100% 100%;
	-o-background-size: 100% 100%;
	-webkit-background-size: 100% 100%;
	background-size: 100% 100%;
	-moz-border-image: url(./btn.png) 0;
	background-repeat:no-repeat\9;
	background-image:none\9;
	filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='./btn.png', sizingMethod='scale')\9;
}

定义好上述CSS后,就可以在页面中使用了,例如:

<div class="btn_bg"></div>

.btn_bg样式中:width和height定义了背景图默认的宽高,假如这个不定义并且引用该样式的DIV也不定义宽度,那么背景图的宽度会拉伸至浏览器的宽度,另外可以指定DIV的宽度来拉伸背景图,如:<div class="btn_bg" style="width:300px"></div>。

细心的你会发现,最后三行代码每行样式后都加了 \9 这是指定在IE8及以下浏览器中的样式。

关于滤镜的详细说明,可点击此处查看详细说明。

文章来源:https://blog.csdn.net/wqmain/article/details/8844286

相关文章

JS版的in_array和is_array

写PHP代码是我们可以使用is_array()方法来检测一个变量是否是数组,使用in_array()来判断一个变量是否包含在一个数组中,那么在JS中我们该,如何来判断呢?   下面来分享...

jQuery 滚动鼠标中键图片自动改变大小(统一控制)

今天维护一个项目,需要对内容里的图片通过图片中间控制大小。由于是以前完成的,客户之前也没有提出要求,所以对已经添加后的数据没办法在一个个地在图片上加函数。网上查找了一下控制中键的资料,终于找到解决办法...

JS键盘控制翻页代码

<script language="javascript"> <!-- document.onkeydown=nextpage var prevpage="prev.html"...

jQuery插件 图片放大镜-Cloud Zoom

jQuery插件 图片放大镜-Cloud Zoom

图片放大镜效果是一种不错的效果,多应用于电子商务、图片展示等网站,给用户带来更好的体验。实现这种效果的代码不少,今天要给大家介绍的是 Cloud Zoom,它是 jQuery 的一个插件。和其他产品相...

jQuery下拉框美化插件DropKick

jQuery下拉框美化插件DropKick

DropKick 是一个下拉框美化插件,使用非常简单,直接为下拉框 select 调用方法即可,瞬间让你摆脱繁琐。DropKick 有 3 种主题,你可以选择一种与你的页面更加搭配的,当然你也可以自己...

js 字符串操作函数集合

concat() – 将两个或多个字符的文本组合起来,返回一个新的字符串。  indexOf() – 返回字符串中一个子串第一处出现的索引。如果没有匹配项,返回 -1 。  c...

评论列表

烂番茄
11年前 (2015-09-18)

关注下了哈~

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。