27

私が使用しようとするとleft: -webkit-calc(100% - 100px);(初期状態であると仮定してleft: 0;)、iOS 6.0.1で問題なく動作します。しかし、同じtransition: left 1s linear;ことをすると、毎回Safariが即座にクラッシュします。それは既知のバグですか、それとも何か間違っていますか?

また、Safari 5 では動作しません (反応なし)。ただし、Firefox と Chrome では機能します。

4

7 に答える 7

4

auto 以外でプロパティを初期化することで、これを修正できます。

.menu {
  left: 0;
  transition: left 1s linear;
}

.menu-open .menu {
  left: -webkit-calc(100% - 50px);
  left: calc(100% - 50px);
}
于 2014-05-21T10:31:55.753 に答える
2

これは、しばらく前から WebKit のバグでした。今のところ、JS を使用して同じ最終効果を実現できます。

于 2013-02-08T23:18:18.830 に答える
2

これまでに投稿された回答はどれもうまくいきませんでした。

うまくいったのは、calc負のマージンを使用してステートメントを回避することでした:

#example {
  left: 100%;
  margin-left: -100px;
}
于 2015-04-28T23:44:10.797 に答える
0

おそらく次のようなことをしてください:

.class{
    left: -webkit-calc(100% - 100px);
    transition: margin-left 1s linear, right 1s linear;
}


.class.open {
    margin-left: -100%;
    right: 100px;
}

警告: 未テスト

于 2013-05-10T22:11:09.680 に答える
0

残念ながら、同様のタスクを達成するためにこれを行う必要がありました。

$('.modal').css({
  'height': $(window).height() - 40
});
于 2013-03-05T13:43:14.537 に答える