2012-06-23 3 views
0

Я использую -webkit-transform: rotate(40 deg), и кажется, что вращающийся элемент скрывает части элементов, которые находятся сверху (, а не дети) повернутого.-webkit-transform: вращать - скрывает элементы сверху

Я создал jsFiddle here с кодом, так как это будет проще продемонстрировать.

Возможно, это связано с тем, что вращающийся элемент скрывает части других элементов, но я не хочу этого эффекта. Как я могу это исправить?

Я использовал z-index, но это не поможет!

ответ

1

Вы делаете 3D-преобразование. У вас есть «rotateY» в скрипке, а не «вращать». Итак, вы перемещаете часть самолета перед кнопками. Проверьте для себя, изменив код для второй кнопки для

$("div.buttonB").click(function() { 
    $("div.background").css('-webkit-transform', 'rotateY(-190deg)') 
}); 

Этот путь после нажатия buttonB, buttonB будет кликабельна но buttonA не будет. Теперь измените значение -190deg на 190deg, и вы увидите, что он работает наоборот.

Если вы хотите обернуть голову вокруг 3D-преобразований, ознакомьтесь с этим сайтом.

http://thewebrocks.com/demos/3D-css-tester/

Смотреть видео и играть с контролем. Надеюсь это поможет.

+0

Хорошо, но почему, когда я поворачиваю элемент на 90 градусов (если элемент плоский, это означает, что он показывает его обратно), то у меня есть эта коробка - начиная от центра повернутого элемента до конца, то есть вершина каждого другого тега? – drinchev

+0

Я не понимаю, что вы имеете в виду. Если вы поворачиваете плоскую поверхность на 90 градусов, вы должны получить «прямоугольник», который в этом случае равен нулю. В этом случае обе кнопки можно щелкнуть. – szym

+0

Ну, у меня есть обновление для этого. Я думаю, что это ошибка в Chrome для MAC OS X ... Я обновил [скрипку] (http://jsfiddle.net/v4Tec/). Я собираюсь написать вопрос – drinchev