1

cssを使用したフォーム要素のスタイリングは、すべてのブラウザーが異なる方法でタグをレンダリングするため(safariレンダリングチェックボックスの場合と同様)、問題になる可能性があります。

さて、しばらくの間サファリを無視しましょう。スキニング入力とボタンはかなり簡単ですが、完全にスキン選択、チェックボックス、ラジオなどを行う方法です。

このページを参照してください:
チェックボックススキニングスキニングを
選択
ラジオスキニング

EXTJSやMooToolsなどのJSフレームワークでそれができると聞きましたが、大規模なフレームワークソリューションは必要ありません。独立したJSだけで、スキンを好きなように変更できます。JQueryソリューションは使用しないでください。 tそれを使用します。

特定のフレームワークを使用せずにそれを行うためのアイデアはありますか?

4

2 に答える 2

6

完全な制御が必要な場合は、通常、ブラウザー コントロールを完全に置き換えて、他の要素、スタイルシート、およびスクリプトで偽装する必要があります。

フレームワークを使いたくない場合は、基本的に DIY になります。

とはいえ、コンセプト全体にはいくつかの問題があります。

  1. ユーザーが期待するようにコントロールを動作させようとするのは難しいです(クリック、ダブルクリック、トリプルクリック、右クリック、ドラッグ、矢印キー、コントロールキーなどからの入力が与えられた場合) 。
  2. コントロールがユーザーの期待どおりに表示されない場合があります。

個人的には、フォーム コントロールがシステムのデフォルトに固執するようにし、それから逸脱しようとしないようにするのが一般的です。ユーザーが期待するものを提供します。

于 2009-05-14T10:31:47.070 に答える
3

今日、フォーム要素のスタイリングを幅広くカスタマイズできるjavascriptソリューションは非常にたくさんあります。簡単なグーグルはいくつかの素晴らしいものを思いついた:

今日、 Codepen.comでさまざまな種類のフォーム要素のスタイリングを見つけることができます


古い回答( 2009年5月16日から):

はい、それは非常に簡単です。


見栄えの良いフォームを作成するための独立したスクリプトであるniceformsを使用してから、必要に応じ
てグラフィック画像/CSSを変更できます。

アイデアは、
同じ機能性で同じように見えるものをコーディングするが、デザインが異なる場合、
JavaScriptの魔法で「命を吹き込む」必要があります:)

次に、 「偽の」フォーム要素に対応する事前に非表示にしたフォーム要素に同じ値を
反映する必要があるよりも、ユーザーがクリックしたものを確認するために、いたるところにilstenerを配置する必要があります。つまり、それを操作することです。フォームを送信すると、適切な値はJS経由の場所になります。


于 2009-05-16T23:10:07.573 に答える