入力タイプ「file」とは何ですか? これが何なのかは説明する必要はないと思います。誰もが知っていることです。そして、さまざまな携帯電話があるこの時代では、写真を撮って直接アップロードすることもできます。以前よりもずっと楽しいです。 以前は 1 つのファイルしかアップロードできませんでした。現在は、 multiple属性を追加することで複数のファイルをアップロードでき、多くのファイル形式がサポートされています。詳細については、http://www.w3.org/html/ig/zh/wiki/HTML5/number-state#.E6.96.87.E4.BB.B6.E4.B8.8A.E4.BC.A0.E7.8A.B6.E6.80.81 を参照してください。 アップロードボタンのスタイル調整CSS を扱ったことがある人なら、HTML 要素の中で、フォーム コントロール要素のスタイル変更が最も面倒だということを知っています。多くのコントロールのスタイルは、システム テーマによって変わります。変更したい場合、特に IE ブラウザーでは、シミュレートすることしかできません。 アップロードボタンtype="file"については、一度スタイルを変更しました。シミュレーション方式を試した方もいましたが、シミュレーション方式ではいわゆるセキュリティ上の問題が発生する可能性があると言われています。まあ、ページ作成者や画像カッターの私には理解できませんし、理解できたとしても対処方法がわかりません。じゃあシミュレーションしないで… しかし、シミュレーションを行わない場合、どのようにスタイルを変更できるのでしょうか? 画像配置オーバーレイソリューション以前私が知っていた方法は、実は誰もが知っている方法で、アップロードボタンtype="file" を透明にして画像の上に重ね合わせるというもので、クリックするだけで画像をアップロードできると感じられ、ネイティブのアップロードボタンを見る必要はありません。 コードをコピー コードは次のとおりです。 <input type="file" id="upfile" ><span ></span>.up_icon,.up_input {position: absolute;top: 10px;left: 10px;width: 64px;height: 64px;z-index: 2}.up_icon {overflow: hidden;font-size: 0;line-height: 99em;background: url(http://sfault-image.b0.upaiyun.com/346/967/3469672357-54250d7235406_articlex) no-repeat 0 0;z-index: 1;} デモをご覧ください: http://jsbin.com/qacijusihivi/1/ このデモでは、実装方法が非常に明確に示されています。アップロード ボタンは画像の上に配置されています。画像は、空のラベルの背景画像として使用できます。次に、アップロード ボタンの不透明度を0に設定して、ボタンが見えないようにしています。ただし、実際にはボタンは存在します。その後...その後...他には何も起こらず、効果が達成されます... WebKit 向けソリューションこの Webkit カーネルのソリューションは、Webkit カーネルにのみ有効であるため、実際には少し無理があり、あまり実用的ではありません。 -webkit-プレフィックスを使用した書き込みがサポートされていない場合は効果がありません。そのため、誰もが娯楽としてそれを見るべきです。 コードをコピー コードは次のとおりです。 <input type="file" id="upfile">input[type="file"]::-webkit-file-upload-button {position: absolute;top: 10px;left: 10px;width: 64px;height: 64px;overflow: hidden;line-height: 99em;background:url(http://sfault-image.b0.upaiyun.com/346/967/3469672357-54250d7235406_articlex) no-repeat 0 0;border: 0 none;z-index: 2;} デモをまずご覧ください: http://jsbin.com/wicihihabifi/1/ このデモの HTML 構造は非常にシンプルで、[入力タグが 1 つだけです。以前の方法よりもはるかにシンプルですが、互換性は確実に低くなります。携帯電話でどのように動作するかはわかりません。ほとんどの携帯電話は現在、Webkit ベースのブラウザーを使用しています。忘れて、エンターテイメントとして扱って楽しんでください。 シンプルな HTML 構造変更スタイルは、 ::-webkit-file-upload-button疑似要素に完全に依存しています。これは単なる普通のボタン要素なので、この疑似要素のスタイルに対応する変更を加えるだけです。このボタン要素を Shadow DOM で表示すると、より鮮明に表示されます。 これは Chrome 開発者ツールで表示される DOM ツリーです。一般的に、Shadow DOM の表示を有効にしないと、 type="file"の入力にこれほど多くのコンテンツが含まれていることはわかりません。開く方法は非常に簡単です。開発者ツールの右上隅にある歯車をクリックします。 これで他の入力タグも自分で確認できるようになりました。Shadow DOMがあれば拡張可能です。そして、新しい HTML5 タグにもいくつかあります... やっとtype="file"の入力タグについては、現在、スタイルを変更する方法が 2 つしか知られておらず、 Webkitのソリューションも非常に限られていますが、携帯電話では問題ないはずです。おそらく誰かが、「他のブラウザはどうですか?」と尋ねるでしょう。はい、どうですか?私も知りません。 Firefox ブラウザでは、 forms.cssにセレクターinput type="file" > button[type="button"]がありますが、なぜかこのセレクターを自分のスタイルに追加しても効果が見られなかったので、それ以上操作しませんでした。 PS: form.css ファイルについては、Firefox ブラウザのファンであれば、パス resource://gre-resources/forms.css の存在を知っているはずです。 ああ、そうか、Opera ブラウザもあるんだ。Mac で遊んでいたときは、プレフィックス-webkit-の付いたスタイルがそのまま継承されていたんだ... 添付ファイル: アップロードボタンの画像:![]() |
<<: Saltstack に Zabbix サービスをデプロイする方法を説明します
>>: JS クロスドメイン XML - AS URLLoader を使用
1. mysql-8.0.15をダウンロード、インストール、設定する1. 公式サイト (https:...
ディスクを自動的に検出する構成キーの値注: このキー値は Linux プラットフォームでのみサポート...
vue-無限スクロールインストール npm インストール vue-infinite-scroll -...
序文gdb は Linux で非常に便利なデバッグ ツールです。コマンドライン モードのデバッグ ツ...
ウェブサイトがワイドスクリーンの場合、ブラウザ ウィンドウを左右にドラッグすると、ウェブサイトの幅が...
目次1. 概要2. MySQLデータ型の詳細な説明1) 文字列型2) 整数型3) 浮動小数点型4) ...
1. マスタースレーブレプリケーションとは何ですか?マスタースレーブレプリケーションは、スレーブデー...
ご存知のとおり、SSH は現在、リモート ログイン セッションやその他のネットワーク サービスにセキ...
目次1. はじめに2. 本文2.1 および演算子2.2 または演算子2.3 オペレーター2.4 no...
背景最近、面接でデータベース トランザクションについてよく質問されます。通常は、@Transacti...
偶然にも、SQL ステートメントを異なる MySQL インスタンスで実行すると、異なる結果が生成され...
この記事の例では、動的な背景を実現するためのjsの具体的なコードを参考までに共有しています。具体的な...
<label> タグは、入力要素のラベル (タグ) を定義します。ラベル要素はユーザーに...
目次1. 重複したリクエストをキャンセルする2. すべてのリクエストをクリーンアップするこのソリュー...
1. Linuxサーバーは、/etc/hosts.denyを設定して、相手のIPがSSH経由でサー...