Подтвердить что ты не робот

Изображение jQuery для мобильного фона

Я создаю мобильный сайт jQuery, и я пытаюсь вставить масштабируемое изображение в фоновое изображение, которое будет регулировать размер экрана телефона. Это мой код:

<!DOCTYPE html> 
<html> 
<head> 
<title>Discover Dubrovnik</title> 
<link rel="stylesheet" href="jquery.mobile-1.0a4.1.min.css" />
<script type="text/javascript" src="jquery-1.5.2.min.js"></script>
<script type="text/javascript" src="jquery.mobile-1.0a4.1.min.js"></script>
<style type="text/css">
.ui-page {
    background: transparent url(image.gif);
}
</style>

</head> 
<body> 

<div data-role="page" data-theme="b">

<div data-role="header">
    <h1>Header tex</h1>
</div><!-- /header -->

<div data-role="content" data-theme="d">    
some text
    </div><!-- /content -->

<div data-role="footer">
<h1>Neki izbornik</h1>
</div>
</div><!-- /page -->

Когда окно находится в полноэкранном режиме, я получаю фоновое изображение, но когда я изменяю его размер/уменьшаю (например, экран в телефонах), изображение не изменяется и оно не центрируется, поэтому я могу видеть только один его часть...

Подключенные файлы jQuery и CSS загружаются с jquerymobile.com

4b9b3361

Ответ 1

Для jQuery mobile и phonegap это правильный код:

<style type="text/css">
body {
    background: url(imgage.gif);
    background-repeat:repeat-y;
    background-position:center center;
    background-attachment:scroll;
    background-size:100% 100%;
}
.ui-page {
    background: transparent;
}
.ui-content{
    background: transparent;
}
</style>

Ответ 2

Ни один из вышеперечисленных не работал у меня с использованием JQM 1.2.0

Это работало для меня:

.ui-page.ui-body-c {
    background: url(bg.png);
    background-repeat:no-repeat;
    background-position:center center;
    background-size:cover;  
}

Ответ 3

Думаю, ваш ответ будет background-size:cover.

.ui-page
{
background: #000;
background-image:url(image.gif);
background-size:cover;  
}

Ответ 4

Вот как я масштабирую <img> теги. Если вы хотите сделать это фоновым изображением, вы можете установить его абсолютное положение, поместите изображение туда, где хотите (используя: верхние, нижние, левые, правые объявления) и установите его z-index ниже остальной части вашей страницы.

//simple example
.your_class_name {
    width: 100%;
    height:auto;
}
//background image example
.your_background_class_name {
    width: 100%;
    height:auto;
    top: 0px;
    left: 0px;
    z-index: -1;
    position: absolute;
}

Чтобы реализовать это, вы просто поместите тег изображения внутри элемента data-role = "page" на своих страницах с классом ".your_background_class_name" и атрибутом src, установленным на изображение, которое вы хотите использовать как ваш фон.

Надеюсь, это поможет.

Ответ 5

Попробуйте это. Это должно работать:

<div data-role="page" id="page" style="background-image: url('#URL'); background-attachment: fixed; background-repeat: no-repeat; background-size: 100% 100%;"
    data-theme="a">

Ответ 6

просто замените свой класс на это.

.ui-page
{
   background: transparent url(images/EarthIcon.jpg) no-repeat center center;
}

У меня такая же проблема, и я решил ее.

Ответ 7

Просто добавьте важный тег ко всем элементам css в ответе Паоло! Прекрасно работает для меня JQM + телефонная задержка

Пример:

body {
    background: url(../images/background.jpg) !important;

Ответ 8

С JQM 1.4.2 этот работает для меня (измените тему на использованную):

.ui-page-theme-b, .ui-page-theme-b .ui-panel-wrapper {
    background: transparent url(../img/xxx) !important;
    background-repeat:repeat !important;
}

Ответ 9

Я нашел, что этот ответ работает для меня

<style type="text/css">
#background{ 
position: fixed; 
top: 0; 
left: 0; 
width: 100% !important; 
height: 100% !important; 
background: url(mobile-images/limo-service.jpg) no-repeat center center fixed !important; 
-webkit-background-size: cover; 
-moz-background-size: cover; 
-o-background-size: cover; 
background-size: cover; 
z-index: -1; 
} 
.ui-page{ 
background:none; 
}
</style>    

также добавить id="background" в div для вашего раздела контента

<div data-role="page" data-theme="a">
  <div data-role="main" class="ui-content" id="background">
  </div>
</div>

Ответ 10

Переопределите класс ui-страницы в вашем css:

.ui-page {
    background: url("image.gif");
    background-repeat: repeat;
}

Ответ 11

мой опыт:

в некоторых ситуациях URL-адрес фонового рисунка должен быть помещен отдельно для всех частей страницы - Я использую:

var bgImageUrl = "url(../thirdparty/icons/android-circuit.jpg)";

...

$('#indexa').live('pageinit', function() {

   $("#indexa").css("background-image",bgImageUrl);
   $("#contenta").css("background-image",bgImageUrl);
   $("#footera").css("background-image",bgImageUrl);
   ...
}

где "indexa" - это идентификатор всей страницы, а "contenta" и "footer" - id-s содержание и нижний колонтитул соответственно.

Это работает в PhoneGap + jQuery Mobile