Как найти вращение элемента в CSS3? - PullRequest
0 голосов
/ 14 марта 2012

Я пытаюсь найти вращение css одного элемента, а затем применить его к другому элементу. Как бы я пошел об этом? CSS для справки (но это может быть любое вращение или даже любое преобразование):

#firstelement { transform: rotate(90deg); }

Я не нахожу ничего в объекте element.style первого элемента. Есть идеи?

1 Ответ

3 голосов
/ 14 марта 2012

Если вы хотите получить стили, которые могут быть установлены с помощью CSS, вам нужно извлечь их немного более сложным образом (это отличается для IE и всех остальных), чем просто чтение свойства стиля.Вот функция, которая может сделать это:

function getStyle(el, styleProp) {
    if (el.currentStyle) {
        // look for IE
        return(el.currentStyle[styleProp]);
    } else if (window.getComputedStyle) {
        // all other browsers
        return(document.defaultView.getComputedStyle(el,null).getPropertyValue(styleProp));
    } else {
        // fall back to inline style
        return(el.style[styleProp]);
    }
}

var val = getStyle(document.getElementById("firstelement"), "transform");

Имейте в виду, что вам придется управлять префиксами, специфичными для поставщика, для некоторых настроек CSS3.

Здесь вы можете увидеть пример, который будет работатьв Chrome или Safari: http://jsfiddle.net/jfriend00/JfC2V/ (кодируется для префиксов webkit).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...