質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Internet Explorer

Internet Explorer(IE;MSIE)はマイクロソフトが開発したウェブブラウザです。Microsoft Windowsに組み込まれています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

2回答

4711閲覧

IEでolタグを利用したところ「1」しか表示されない。

takumi123

総合スコア59

Internet Explorer

Internet Explorer(IE;MSIE)はマイクロソフトが開発したウェブブラウザです。Microsoft Windowsに組み込まれています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2016/01/19 22:50

IEとEdgeブラウザーで<ol>タグを利用したところ、全てのリストで1しか表示されないというバグが起こりました。

解決策をネットで探して、CSSで以下のように記述すればよいとありました。

css

1* { zoom: 1; } 2ul, ol, li { zoom: normal; }

しかし、これを行っても結果は変わりませんでした。
以下が私の書いているHTMLを簡略化したものになります。
CSSフレームワークとしてBootstrapを使っています。

html

1<ol> 2 <div> 3 <li><a href="">text</a></li> 4 <p>text</p> 5 </div> 6 <div> 7 <li><a href="">text</a></li> 8 <p>text</p> 9 </div> 10 <div> 11 <li><a href="">text</a></li> 12 <p>text</p> 13 </div> 14</ol>

IEとEdge以外では、普通にリストが番号順に表示されます。
解決策が見つけられずに非常に困っております。

解決策を教えていただければ大変うれしいです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

そもそも、ol要素の直下の要素(子要素)には、li要素、script要素、template要素しか指定できません。

4.4.5 The ol element - HTML Standard

Content model:
Zero or more li and script-supporting elements.

訳:0個以上の、li要素script-supporting要素。

4.4.5 The ol element — HTML5

Content model:
Zero or more li and script-supporting elements.

訳:0個以上の、li要素script-supporting要素。

<ol>: 順序付きリスト要素 - HTML | MDN

許可されている内容
0個以上の <li> 要素。さらに <ol> または <ul> 要素を入れ子で包含することがあります。

HTMLの仕様を策定しているグループ「W3C」公式のHTMLバリデータ(HTML構造の正当性を検証するツール)でも、このマークアップではエラーとなります。

The W3C Markup Validation Service

簡単に言うと、ol要素の子要素としてdiv要素を指定している現在のマークアップそのものが、つまり、HTMLのほうが誤っています。
IEとEdge以外では正常に表示されているとしても、それは「たまたま」正常に表示されただけであって、そのWebブラウザのエンジンが非常に親切だったというだけのこと。
テストされていない未知のブラウザ等でも似たような、あるいはもっとひどい現象が起こりえますし、そうなったとしてもHTML側が間違っているため、ブラウザのバグとは言えません。

coba-cobaさんの解答のような修正を行う必要があります。

投稿2016/01/20 01:45

編集2018/06/15 12:02
sounisi5011

総合スコア697

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

これではだめですか?

HTML

1<ol> 2 <li><div><a href="">text</a><p>text</p></div></li> 3 <li><div><a href="">text</a><p>text</p></div></li> 4 <li><div><a href="">text</a><p>text</p></div></li> 5</ol>

投稿2016/01/19 23:58

coba-coba

総合スコア1409

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問