IEではボタンが両側に伸びる

IEではボタンが両側に伸びる
ボタン (input, button) を記述すると、IE では次のようになります。
単語数が増えると、両側の間隔が大きくなります。
WIN の XP スタイルでは、単語数が多いと、両側に深刻なギザギザが現れます。
理由は何ですか?
Blue Ideal WEB 標準化コラムの元モデレーターである zbm2001z が回答しました:
1. IE は、ボタンの値に 4 バイト (中国語の文字の場合は 2 バイト) が追加されるごとに、ボタンの両側に合計 1 バイトのパディング幅を生成します。
2. IE ボタンのデフォルト スタイル (XP スタイル) は、背景として固定サイズの角丸長方形画像です。そのため、ボタンの幅と高さが大きくなると、この固定サイズの角丸長方形画像の端は自然に「粗く」なります。
WIN システム自体がバグを修正しない限り、現時点では 2 番目の問題を解決する方法はありませんが、最初の問題はまだ修正できます。
IE では、ボタン要素の overflow 属性の visible 値を設定します (注: padding 値は、overflow:visible 属性が設定された後にのみ有効です)。この属性は、前回の記事「background-clip と background-origin のアプリケーション」で実際に使用されています。しかし、今日「IE の引き伸ばされたボタンの問題」を読んだ後、小さなバグがあることに気付きました。ボタンをテーブル セルに配置すると、ボタンは正しく表示されますが、元々予約されていた幅のサイズは変更されず、依然としてスペースを占有します。IE6 では、ボタンの幅 (width) を 0 に設定する必要があります (IE7 にもこのバグがありますが、まだ良い解決策は見つかっていません)。
最終的な修復コードは次のとおりです (デモ):
input.button { パディング: 0.25em; 幅: 自動; _width: 0; オーバーフロー: 表示可能 !ie;}

<<:  MySQL ロック制御同時実行方法

>>:  TypeScriptにおけるunknownとanyの違いについて詳しく説明します

推薦する

ロンボク実装 JSR-269

序文導入Lombok は、Google Guava と同様に便利なツールであり、強くお勧めします。す...

Docker で onlyoffice をインストールして展開する詳細なプロセス

0. システム要件CPU I5-10400F以上メモリ 16 GB、32 GBのメモリが最適ハードド...

Deepin で virtualenv をインストールして使用するチュートリアル

virtualenv は、分離された Python 仮想環境を作成するためのツールです。独立したディ...

VUEはG2チャートを使用した実装を導入します

目次G2チャートについて使用テンプレートで使用される完全なコード (棒グラフ)世界地図を追加するG2...

border-radiusは要素に丸い境界線を追加する方法です

border-radius:10px; /* すべての角は半径 10px で丸められます*/ bor...

Jenkins の docker-compose デプロイメントと構成に関する詳細なチュートリアル

Docker-compose デプロイメント構成 Jenkins 1. Docker-compose...

MySQL テーブルを返すとインデックスが無効になるケースの説明

導入MySQL InnoDB エンジンがレコードをクエリし、インデックス カバレッジを使用できない場...

JavaScript の useRef と useState の紹介

目次1. useStateフック2. useRefフック3. useRef と useState 4...

2008 年の Web デザインにおける 10 の経験

<br />インターネットは絶えず変化しており、BusinessWeek.com は専門...

CSS3 で King of Glory マッチング人員読み込みページを実装する方法

King of Glory をプレイしたことがある人なら、このページの効果をよくご存知でしょう。なぜ...

MySQL タイムブラインドインジェクションの 5 つの遅延方法

MySQL タイム ブラインド インジェクションの 5 つの遅延方法 (PWNHUB の予期しない解...

docker ベースの redis-sentinel クラスターの構築例

1. 概要Redis Cluster は、Redis ノードのグループ間での高可用性とシャーディング...

Linux で open-vswitch をインストールおよびアンインストールする方法

1. ソースコードからovsをコンパイルしてインストールします。依存関係をインストールします: # ...

無効と読み取り専用で入力を読み取り専用に設定する

読み取り専用入力を実現するには、無効と読み取り専用の 2 つの方法があります。当然、どちらの結果も読...

CSSは5つの一般的な2D変換を実装します

CSS の 2D 変換を使用すると、移動、回転、拡大縮小、変形などの基本的な変換操作を 2 次元空間...