2012-02-26 3 views
1

私は、CSSでアニメーションのスタイルボタンをiOS-5のようにレンダリングするチェックボックスのクールなテーマを作成しましたが、丸められたコーナーのためのウェブキットで。私はクリッピングコンテナが事を起こしpositionを持っているので、このバグがあるけど、私はこの問題を解決する方法を考えることはできません。..丸い角のコンテナにクリップされていない背景アニメーション

誰かがこの問題に対処する方法を知っていますか?
私はこのバグを掘り出して何も役に立たなかった。 10倍!

CHECK THE DEMO(Firefoxの上で素晴らしい作品)


enter image description here

答えて

0

これは、以前よりも優れている...しかし、まだ完璧ではありません。

http://jsfiddle.net/XCKau/1/

ラベルに国境半径を追加します。前とラベル:後とチェックボックスを隠す:

.togglebox label::before{ 
    border-top-left-radius: 20px; 
    border-bottom-left-radius: 20px; 
} 
.togglebox label::after{ 
    border-top-right-radius: 20px; 
    border-bottom-right-radius: 20px; 
} 
input[type=checkbox]{ 
    visibility:hidden; 
} 
+2

なぜdownvoteですか?私はそれが完璧ではないがあなたのものよりも優れていると書いた。 – Alex

+2

合意。なぜ下の票? –

+0

明らかに私はすでにこれについて考えているので、アイデアを却下した。犯行者はいない、私はちょうど私の顔に唾を吐くように感じた。私のCSSスキルには無礼だ。明らかに問題は四捨五入よりも大きい内部の要素のいくつかのコーナー... :) – vsync

0

はこの行い、作業の追加:

.togglebox label::before { 
    border-top-left-radius: 20px; 
    border-bottom-left-radius: 20px; 
} 

.togglebox label::after { 
    border-top-right-radius: 20px; 
    border-bottom-right-radius: 20px; 
} 

をIと思います「確認済」状態を少し変更します。

.togglebox input:checked ~ label { left: -61px } 

しかし問題は、チェックボックスが表示されることです。

#chkbx {position: absolute; left: 10px;} 

のような単純なものを追加するとよいでしょう。

ここjsfiddleです:http://jsfiddle.net/XCKau/2/

私はディスプレイ入れないように、あなたに助言する:なしを。入力に!念のために。 - ちょうどそれをテストしました:それがない場合はdisplay: none; IE8を使用している人々はまだチェックボックスを使用することができます。あなたがそれを使っているなら、彼らは何も確認することができません。

+0

まだブラウザで完璧ではありません。 チェックボックスを非表示にするには 'visibility:hidden;'はどうですか?それは動作しますか? – Alex

+0

@Alexどのブラウザですか?私はすべての主要なブラウザで自分のjsfiddleをテストしましたが、それは動作します(

+0

正直言って、私はあなたが聴衆に到達しているとは思わない。 IEのシェアはまだかなり大きいので、基本機能には誰でもアクセスできるはずです。 –

関連する問題