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

Galleria Fatal error: Не удалось извлечь высоту сцены из CSS. Высота трассировки: 0px

Если у меня есть строка <style type="text/css"></style>, хотя она не заполнена, Galleria выдает сообщение об ошибке "Fatal error: Не удалось извлечь высоту сцены из CSS. Высота трассировки: 0px".

Казалось бы, хотя я говорю galleria использовать высоту 300 через:

$('#galleria').galleria({ 
width: 300, 
height: 300, 
transition: 'fade' 
}); 

он пытается сначала определить высоту, и строка CSS сбивает ее с толку, поэтому она выдает эту ошибку. Если я удалю эту одну строку, больше не будет ошибок.

В любом случае я могу использовать <style type="text/css"></style>? мы используем его, чтобы настроить внешний вид нашего сайта на основе использования клиентом.

4b9b3361

Ответ 1

Убедитесь, что вы включили:

Руководитель:

<link type="text/css" rel="stylesheet" href="galleria/themes/classic/galleria.classic.css">
<script type="text/javascript" src="js/galleria-1.2.5.min.js"></script>
<script type="text/javascript" src="galleria/themes/classic/galleria.classic.min.js"></script>

Также в стиле страницы:

#galleria{height:467px}

И под изображениями:

<script type="text/javascript">
$('#gallery').galleria({
width: 700,
height: 467 //--I made heights match
});
</script>

Если у вас есть проблемы с этим устранением неполадок с чистой установкой и добавьте, пока не найдете причину.

Ответ 2

Вам нужно указать контейнер изображения галереи в css. Вот где galleria показывает изображения в (поэтому он должен быть меньше высоты самой галереи).

.galleria-stage {
    height: 450px;
    position: absolute;
    top: 10px;
    bottom: 60px;
    left: 10px;
    right: 10px;
    overflow: hidden;
}

Ответ 3

Это может помочь кому-то, кто до сих пор получает эту ошибку: -

Я получил эту ошибку, потому что у меня была скрытая галерея.

FIX: - Дайте галерее div высоту в CSS, затем в js файле,

Galleria.run('#gallery', {
  height: parseInt($('#gallery').css('height')),
  wait: true
 });

Смотрите эти ссылки для получения дополнительной информации: - http://galleria.io/docs/references/errors/

http://galleria.io/docs/options/wait/

Ответ 4

У меня была эта ошибка только в IE. Решение состоит в том, чтобы заставить высоту.

В CSS galleria.classic.css добавьте высоту для класса .galleria-stage

Пример.

.galleria-stage { 
  height:450px; <-- set this to any height and i should work :)
  position: absolute; 
  top: 10px; 
  bottom: 60px; 
  left: 10px; 
  right: 10px; 
  overflow:hidden;
} 

Ответ 5

Scenerio

Если это происходит с вами, это, скорее всего, потому, что вы скрываете элемент Galleria при загрузке страницы. Это упоминается в нескольких других ответах, но решения, которые эти ответы наброски не обязательно являются лучшими методами.

Проблема

Для меня у контейнера Galleria установлено значение display:none; при запуске страницы. Объект Galleria находится в лайтбоксе, поэтому он не отображается, пока пользователь не нажмет на кнопку. Это свойство display:none является тем, что вызывает проблему.

Решение

Вместо скрытия элемента с display:none; используйте большое отрицательное левое поле, например left:-9999px; или margin-left:9999px. Любой из этих методов обеспечит правильную загрузку Galleria.

Ответ 6

Попробуйте установить DocType, как показано ниже, если вы используете классическую тему вместе с настройкой высоты и ширины в классе css.galleria-stage css в файле galleria.classic.css

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 //EN">

Ответ 7

У меня была такая же проблема при использовании jQuery galleria, и я решил ее. Я изменил некоторые параметры в galleria-1.2.5.min.js.

Здесь - ссылка для загрузки библиотеки, просто скопируйте код и вставьте его в файл js.

Ответ 8

Я использовал один и тот же pb. то я попробовал что-то еще. все мои файлы javascript были в конце моего html файла. поэтому я попытался переместить их все непосредственно перед тегом закрытия </head>.

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
<script type="text/javascript" src="lib/galleria/galleria-1.2.5.js" /></script>
<script type="text/javascript" src="lib/galleria/themes/classic/galleria.classic.min.js"></script>
</head>

Я не очень доволен кодированием этого способа (т.е. javascript в конце). во всяком случае, это работает, и галерея великолепна!

Ответ 9

Я добавляю ответ на этот вопрос, поскольку все вышеперечисленное не работает для меня. В моем случае я загружал galleria (1.2.7) динамически внутри встроенного виджета javascript для перекрестных доменов. Несмотря на то, что высота сцены была установлена ​​правильно, скрипты были загружены, и galleria инициализировался правильно, это сообщение об ошибке будет периодически отображаться.

В результате я изменил источник galleria, чтобы отключить отображение сообщений об ошибках (возможно, лучшим вариантом было бы сделать это зависимым от флага отладки, однако я не чувствовал необходимости)

Galleria.raise = function( msg, fatal ) {

    var type = fatal ? 'Fatal error' : 'Error',

        self = this,

        css = {
            display: none;
        },

Ответ 11

После нескольких попыток, ни один из вышеперечисленных решений не работал у меня. Является странной ошибкой, так как она трудно реплицировать и отслеживать, иногда работает, а иногда и нет.

Но попытки найти вещи в сети, похоже, это работает, к моменту. Для тех, кто застрял с этим, я думаю, стоит попробовать:

  • Открыть galleria-1.2.6.min.js
  • Заменить timeout:1E4 строку для timeout:1E10