首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Twitter Bootstrap的响应式背景?

Twitter Bootstrap的响应式背景?
EN

Stack Overflow用户
提问于 2012-10-23 03:02:49
回答 4查看 16.7K关注 0票数 1

我想在一个网站上有一个响应式的背景图像安排。

例如,基于不同的屏幕分辨率,我希望加载不同的背景图像。此外,如果我可以定义不同的行为,这将是有用的;例如,较高分辨率的台式机将具有较大的拉伸背景图像,而上网本可能具有较小版本的缩小以适应,或者3GS iPhone将具有较小的平铺图像。

您将如何实现这样的场景?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-10-23 03:07:57

我相信这会帮助你解决你的问题。我今天在一次与谷歌无关的探险中偶然发现了下面的库:eCSSential。看起来就是那张彩票。您可以使用该库来检测屏幕大小,并加载适当的CSS文件,同时考虑当前视口和当前设备的屏幕大小。相当漂亮。

结合我上半部分的回答,我相信你会有一个很好的方法来处理你的问题。

下面只是一个你可以查询的屏幕尺寸的例子,但是你已经明白了。可以为每个场景设置背景样式。

代码语言:javascript
复制
/* Smartphones (portrait and landscape) ----------- */
@media only screen 
and (min-device-width : 320px) 
and (max-device-width : 480px) {
    /* Styles */
}

/* Smartphones (landscape) ----------- */
@media only screen 
and (min-width : 321px) {
    /* Styles */
}

/* Smartphones (portrait) ----------- */
@media only screen 
and (max-width : 320px) {
    /* Styles */
}

/* iPads (portrait and landscape) ----------- */
@media only screen 
and (min-device-width : 768px) 
and (max-device-width : 1024px) {
    /* Styles */
}

/* iPads (landscape) ----------- */
@media only screen 
and (min-device-width : 768px) 
and (max-device-width : 1024px) 
and (orientation : landscape) {
    /* Styles */
}

/* iPads (portrait) ----------- */
@media only screen 
and (min-device-width : 768px) 
and (max-device-width : 1024px) 
and (orientation : portrait) {
    /* Styles */
}

/* Desktops and laptops ----------- */
@media only screen 
and (min-width : 1224px) {
    /* Styles */
}

/* Large screens ----------- */
@media only screen 
and (min-width : 1824px) {
    /* Styles */
}

/* iPhone 4 ----------- */
@media
only screen and (-webkit-min-device-pixel-ratio : 1.5),
only screen and (min-device-pixel-ratio : 1.5) {
    /* Styles */
}

背景可以针对任何分辨率设置不同的样式,例如:

代码语言:javascript
复制
@media only screen 
and (min-device-width : [width]) 
and (max-device-width : [width]) {

    body {
        background-image: url('../img/image.png');
        -webkit-background-size: cover;
           -moz-background-size: cover;
             -o-background-size: cover;
                background-size: cover;
                // or you could just center the image if it's bigger than the current viewport
                // background-position: center center;
    }
}

来源:其中大部分来自CSS Tricks

票数 5
EN

Stack Overflow用户

发布于 2012-10-23 03:08:04

你可以投资一个小的jquery来根据屏幕尺寸改变你的背景。以下是您可以执行的操作的示例:

代码语言:javascript
复制
if ( $(window).width() < 1000 ) {
    $('body').css('background','url("yourimage")';
} else {
    $('body').css('background','url("yourimage")';
}

如果你有时间能告诉我们你都试过什么吗?

票数 2
EN

Stack Overflow用户

发布于 2012-10-23 03:10:08

this article中讨论了几种方法。最后一种方法可能正是您正在寻找的方法。它包括一个用于检查窗口大小和设置背景的JavaScript函数。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13018000

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档