inline-blockプロパティとの互換性

inline-blockプロパティとの互換性
<br />1年前、インターネット上にはinline-blockプロパティに関する記事はありませんでした。このプロパティを皆さんにもっと理解してもらうために、当時の記事をまとめて「display:inline-blockを徹底的に理解する」という記事を作りました。
現在、inline-block 属性の使用に対する要望がますます高まっています。残念ながら、Firefox 3 ベータ、IE8 ベータ、Opera、Safari のみが inline-block 属性をサポートしています (注: 元々は Opera と Safari のみがサポートしていました)。ただし、IE6 と IE7 は hasLayout をトリガーすることでこれをシミュレートできます。Firefox 2 には -moz-inline-box と -moz-inline-stack のプライベート属性があります (この 2 つの属性の比較は Qin Ge の「display:inline-block の 2 つの適用例」から引用されています)。
実際のアプリケーションでは、-moz-inline-box は要素間の配置などの問題を抱えることになります。Firefox にも配置の問題を解決するためにプライベート属性 -moz-box-align がありますが、予測が難しく、問題も多くあります。相対的に言えば、-moz-inline-stack は inline-block に似た動作をし、Firefox3 でテストできます。ただし、-moz-inline-stack を使用する場合はバグがあります。display:-moz-inline-stack; を持つ要素の外側の要素が display:inline; の場合、そこに含まれるリンクは Firefox でクリックできなくなります。これは、position:relative; を使用して解決する必要があります。
最後に、シミュレーションしたコードは次のようになります。
display:inline-block; /*Firefox3 ベータ版、IE8 ベータ版、Opera、Safari でサポートされ、IE のインライン要素の hasLayout をトリガーします*/
display:-moz-inline-stack; /* Firefox のプライベート プロパティ。-moz-inline-box も使用できます */
zoom:1; /*IEでhasLayoutをトリガー*/
*display:inline; /*IE で hasLayout がトリガーされると、ブロック要素を inline に設定すると、display:inline は display:inline-block と同じ効果を持つようになります*/
テキストインデント:-9999px;
*テキストインデント:0;
フォントサイズ:0;
line-height:0; /* テキストを非表示にする必要がある場合は、これらの 4 つの属性を使用できます*/
/* さらに、上のテキストを非表示にするには、より簡単な方法を使用できます: line-height: super large value; font-size: 0; */
overflow:hidden; /*オーバーフローコンテンツを非表示*/
vertical-align:middle; /* Opera の大きな偏差のために行を垂直中央に配置する*/
幅:? px; /*?自動でない値*/
身長:? px; /*?自動でない値*/

<<:  Nginx サーバーが Systemd カスタム サービス プロセス分析を追加

>>:  XHTMLにおけるH1タグの位置について

推薦する

Linux におけるドライバモジュールのパラメータ転送プロセスの分析

ドライバーモジュールに渡すパラメータ名、タイプ、権限を宣言します。 module_param(変数名...

MySQL の計画タスクとイベント スケジュール例の分析

この記事では、例を使用して、MySQL の計画されたタスクとイベントのスケジュールについて説明します...

Linux MySQL ルートパスワードを忘れた場合の解決方法

MySQL データベースを使用する際、何らかの理由で長期間 MySQL にログインしていない場合、ま...

Linux ソースコードの解析 epoll

目次1. はじめに2. シンプルなepollの例2.1、epoll_create 2.2、構造体イベ...

Linux のごみ箱メカニズムの実装プロセスと使用方法の詳細な説明

序文: Linux システムでの rm は元に戻せません。コマンドの設計自体に問題はありません。問題...

DockerはPruneコマンドを使用してnoneイメージをクリーンアップします

目次無イメージの創造と混乱Noneオブジェクトをクリーンアップする方法トリムミラーコンテナで使用され...

Nginx 7層負荷分散のいくつかのスケジューリングアルゴリズムの簡単な理解

この記事は主に、Nginx 7 層負荷分散のいくつかのスケジューリング アルゴリズムを紹介します。こ...

CSS 属性値正規マッチングセレクターの使い方 (ヒント)

属性値の正規一致セレクターには 3 つの種類があります。 [属性^="値"] [...

ホストNginx + Docker WordPress Mysqlを設定するための詳細な手順

環境Linux 3.10.0-693.el7.x86_64 Docker バージョン 18.09.0...

Linux でマウントされたファイルシステムの種類を表示する方法

序文ご存知のとおり、Linux は ext4、ext3、ext2、sysfs、securityfs、...

ブラウザの互換モードでボタン内のテキストが垂直方向に中央揃えにならない問題について簡単に説明します。

XML/HTML コードコンテンツをクリップボードにコピー<ボタンスタイル= "カ...

Windows 10 での MySQL 8.0.11 圧縮バージョンのインストール チュートリアル

この記事では、MySQL 8.0.11圧縮版のインストールチュートリアルを参考までに紹介します。具体...

CentOS7 で yum ソースをインストールし、コマンド rz と sz をアップロードおよびダウンロードする方法 (画像付き)

** CentOS7 で yum ソースをインストールし、rz および sz コマンドをアップロー...

MySQL InnoDB ReplicaSet の簡単な紹介

目次01 InnoDBレプリカセットの紹介02 InnoDBレプリカセットの制限03 導入前に知って...

ウェブデザイン研究における XHTML の応用の概要

<br />一般的に、「標準的な Web ページ」のファイル構成は XHTML CSS ...