2013-09-19 5 views
2

Моя консоль Chrome возвращает Invalid CSS property name в атрибут CCS, поскольку сайт загружается, даже если он работает, и у меня есть префикс -webkit-.В Chrome 'transform-origin' недопустимо?

Мишень CSS выглядит следующим образом:

-webkit-transform-origin: 0% 50%; 
-moz-transform-origin: 0% 50%; 
transform-origin: 0% 50%; 

Является ли это действительно проблема?

+0

Сокращение и связанные с ним свойства «transform» по-прежнему должны иметь префикс '-webkit' в Chrome, Safari и последних версиях Opera. – Adrift

+0

Но у меня есть префикс, вот почему он работает, разве это вообще не существует? – gespinha

+0

Он существует, может быть, проблема кроется в другом месте. Можете ли вы скопировать/вставить проблемный код в свой вопрос? – Adrift

ответ

8

Я нашел происхождение моего вопроса.

Проблема заключается в том, что браузеры -webkit- не принимают атрибут transform-origin, если он изолирован от вспомогательного атрибута (атрибут, который фактически использует transform-origin).

Так, например, если я использую что-то вроде этого, -webkit- предполагает, что это неправильно:

#divOne{ 
    transform-origin:50% 50%; 
    animation:jump 1s ease both; 
} 
@keyframe jump{ 
    from { transform: translateX(-20%) rotateY(-90deg); } 
    to{ transform: translateX(0%) rotateY(0deg); } 
} 

Это неправильно, потому что атрибут origin отделяется от transform, который собирается взять использование Это. Несмотря на то, что это работает, это не совсем правильно в перспективе браузера.

Это должно быть что-то вроде этого правильным:

#divOne{ 
    animation:jump 1s ease both; 
} 
@keyframe jump{ 
    from { transform: translateX(-20%) rotateY(-90deg); transform-origin:50% 50%; } 
    to{ transform: translateX(0%) rotateY(0deg); transform-origin:50% 50%; } 
} 

Где и transforms вместе на одном элементе.

+2

У меня была эта же проблема, и это не проблема.В webkit вам просто нужно использовать следующее значение для свойства transform-origin: «x% y% z;». В моем случае, просто используя: «-webkit-transform-origin: 50% 85% 0;» решили проблему. В любом случае, 0 генерирует ошибку в IE и в браузерах Mozilla. Вот почему, если вы используете SASS, вам понадобятся разные значения для каждого префикса. Без префикса не должно быть необходимости «0» webkit. –

0

Ответ на ваш вопрос простыми словами: «НЕТ». Это совершенно действительное свойство. Должно быть что-то еще, что вызывает ошибку.

Прочитайте это:

https://docs.google.com/document/d/1UsKm0ywILw9cuTRYlkhqMYTdzNcih6sO15u1eCzGgP8/edit?pli=1#

и это

https://developer.mozilla.org/en-US/docs/Web/CSS/transform-origin#Browser_compatibility

+0

Да, я знаю это, я действительно прочитал эту документацию раньше. Я так же удивлен этой реакции, как вы, вероятно, нет, не имеет ни малейшего понятия о том, что здесь происходит: P – gespinha

Смежные вопросы