99

私のウェブサイトではreset.cssを使用しています。これをリストスタイルに正確に追加します。

ol, ul {
    list-style: none outside none;
}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
    background: none repeat scroll 0 0 transparent;
    border: 0 none;
    font-size: 100%;
    margin: 0;
    outline: 0 none;
    padding: 0;
    vertical-align: baseline;
}

問題は、すべてのリストスタイルがNONEこれで設定されていることです。Webサイトのサブページのすべてのリスト(のすべてのリスト)の元のリストスタイル(デフォルト)に戻したい.my_container

私が設定しようとすると、このCSSプロパティのためだけにブラウザのデフォルトスタイルを継承list-style-typeinheritません。

reset.cssを変更せずに、特定のプロパティの元のブラウザのスタイルを継承する方法はありますか?

4

7 に答える 7

167

私はリセットを削除するためにこのCSSを設定していました:

ul { 
   list-style-type: disc; 
   list-style-position: inside; 
}
ol { 
   list-style-type: decimal; 
   list-style-position: inside; 
}
ul ul, ol ul { 
   list-style-type: circle; 
   list-style-position: inside; 
   margin-left: 15px; 
}
ol ol, ul ol { 
   list-style-type: lower-latin; 
   list-style-position: inside; 
   margin-left: 15px; 
}

編集:もちろん特定のクラスで...

于 2012-07-31T09:47:27.610 に答える
35

これは実際にあなたが探しているものだと思います:

.my_container ul
{
    list-style: initial;
    margin: initial;
    padding: 0 0 0 40px;
}

.my_container li
{
    display: list-item;
}
于 2013-04-18T00:12:55.977 に答える
4

それはいけません。要素にプロパティを割り当てるスタイル シートが適用されている場合、要素のどのインスタンスについても、ブラウザーの既定値にアクセスする方法はありません。

reset.css の (議論の余地のある) アイデアは、ブラウザのデフォルトを取り除くことです。これにより、きれいなデスクから独自のスタイリングを開始できます。これを完全に行う reset.css のバージョンはありませんが、その程度までは、reset.css を使用する作成者はレンダリングを完全に定義する必要があります。

于 2012-07-31T13:50:28.347 に答える
3

将来への答え: CSS 4 にはおそらく revert キーワードが含まれるでしょう。これは、プロパティをユーザー エージェント スタイルシートまたはユーザー スタイルから取得した初期値 (存在する場合は、親から継承された値) に戻します [ source ]。

これを書いている時点では、これをサポートしているのは Safari だけです。ブラウザー サポートの更新については、こちらを確認してください。

あなたの場合、次を使用します:

.my_container ol, .my_container ul {
    list-style: revert;
}

詳細については、この他の回答も参照してください。

于 2016-12-17T18:46:39.980 に答える
2

2 番目の css ブロックのすべての要素のマージンをリセットしています。デフォルトの余白は 40px です - これで問題は解決するはずです:

.my_container ul {list-style:disc outside none; margin-left:40px;}
于 2012-07-31T09:52:39.900 に答える