现在的位置: 首页 > 综合 > 正文

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

2014年09月06日 ⁄ 综合 ⁄ 共 887字 ⁄ 字号 评论关闭

注:本文欢迎转载,以下为本人亲测,转载请注明:http://blog.csdn.net/wqmain/article/details/8844286

相信各位一定碰到过这种情况,按钮作为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及以下浏览器中的样式。

抱歉!评论已关闭.