CSS: Как получить анимированный GIF фоновый рисунок поверх div - PullRequest
1 голос
/ 08 июля 2010

Я пытаюсь сделать загрузочный оверлей.В настоящее время у меня есть некоторый javascript, добавляющий и удаляющий класс, который делает все на 45% непрозрачным, и добавляет макоподобный спиннер для ожидания завершения (например, сортировки).

Теперь, текущий путь,

.currently-loading {
opacity:0.45;
-moz-opacity:0.45;
filter:alpha(opacity=45);
width: 950px;
background-attachment: fixed;
background-image: url(../images/loading.gif);
background-repeat: no-repeat;
background-position: center center;
}

помещает изображение сверху, но изображение не анимируется.Без background-attachment: исправлено, оно оживляет, но текст может быть поверх загрузочной картинки.

ideas?

Ответы [ 2 ]

10 голосов
/ 08 июля 2010

Разве нельзя сделать это с тегом img?

HTML:

<div id="overlay"><img src="loading.gif" alt="Be patient..." /></div>

CSS:

#overlay img { display: none; }

#overlay.currently-loading img { 
    display: block; 
    width: 100%;
    heigth: 100%;
}

ОбновленоCSS.

1 голос
/ 08 июля 2010

хм .. может быть, вместо этого вы можете попробовать абсолютное позиционирование, примерно так:

HTML
<div class="mydiv">
    <div class="text">Currently Loading....</div>
    <div class="currently-loading">&nbsp;</div>
</div>

CSS
.currently-loading {
    opacity:0.45;
    -moz-opacity:0.45;
    filter:alpha(opacity=45);
    background-image: url(../images/loading.gif);
    background-repeat: no-repeat;
    position:absolute;
    height:48px;
    width:48px;
    z-index:10;
}
.text { display:block; width:200px; height:100px; position:absolute; font-weight:bold; z-index:20;}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...