是否有适用于移动设备的 CSS 背景大小属性的替代方案?

发布于 2024-11-04 19:17:11 字数 159 浏览 0 评论 0原文

在 CSS3 中,在按钮的背景图像上设置 background-size 会将其拉伸到按钮的高度和宽度。

有没有 background-size 的替代方案,因为我的目标是移动设备,有些不支持它。我不想以 px 或 em 指定任何内容。

In CSS3, setting background-size on the background image of a button stretches it to the button height and width.

Is there an alternative to background-size, since my targets are mobile devices, and some don’t support it. I dont want to specify anything in px or em.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

梦途 2024-11-11 19:17:11

请参阅 http://css-tricks.com/perfect-full-page-background -image/ - 它详细介绍了一种在不使用背景大小的情况下执行此操作的方法。

See http://css-tricks.com/perfect-full-page-background-image/ - It details a way to do this without using background-size.

淡紫姑娘! 2024-11-11 19:17:11

不,不是真的。

background-repeat 可以获取一张背景图像,并沿 x 轴和/或 y 轴重复它。根据您希望按钮的外观,这可能会起作用:请参阅 http:// sophie-g.net/jobs/css/e_buttons.htm

但是没有任何东西具有与 background-size 相同的效果。这就是引入 background-size 的原因。

No, not really.

There’s background-repeat, which takes one background image, and repeats it along the x-axis and/or the y-axis. Depending on what you want your button to look like, that might work: see e.g. http://sophie-g.net/jobs/css/e_buttons.htm

But there isn’t anything that has the same effect as background-size. That’s why background-size was introduced.

心头的小情儿 2024-11-11 19:17:11

不,没有。

这是 CSS3 引入的一个新属性。许多浏览器已经知道它,但对于那些不知道的浏览器,您有两个主要选择:

  • 优雅降级,例如现代化。我认为这是更好、更简单的方法。
  • 使用不同的图像尺寸,并根据按钮尺寸选择每一种图像尺寸(使用普通 JavaScript、jQuery、Motools 等)。

No, there isn't.

It's a new property introduced on CSS3. Many browsers already know it, but for those that doesn't, you have two main options:

  • Gracefully degrade, with something like Modernizr. I think it's the better and easy approach.
  • Use diferent image sizes and chose each one based on the button size (using vanilla JavaScript, jQuery, Motools, etc).
世界如花海般美丽 2024-11-11 19:17:11

您可以在 IE8 上尝试此操作。我的项目是在 MVC4 中,我尝试了这个并为我工作(IE+Chrome)

div class="logoDiv">  </div>  

,在 css 中你将你的类定义为

.logoDiv {  
        max-width: 100%;
        height: 100px; /*(My Image height was 100px .....You please define yours)*/
        background: url("../Images/logo.jpg") no-repeat;
        background-size: cover; 
        filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../Images/.logo.jpg.jpg', sizingMethod='scale');
    -ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../Images/logo.jpg', sizingMethod='scale')";   
    }

You can try this for IE8. My project was in MVC4 and I tried this and worked for me (IE+Chrome)

div class="logoDiv">  </div>  

and in css you define your class as

.logoDiv {  
        max-width: 100%;
        height: 100px; /*(My Image height was 100px .....You please define yours)*/
        background: url("../Images/logo.jpg") no-repeat;
        background-size: cover; 
        filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../Images/.logo.jpg.jpg', sizingMethod='scale');
    -ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../Images/logo.jpg', sizingMethod='scale')";   
    }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文