CSS列を使用するディレクトリリスティングがありますが、ChromeとSafariでは動作が異なります。ディレクトリの各セクションには、リストを2つの列に並べ替えるラッパーがあります。 Chromeは私が望むようにそれをレンダリングするようクロムとサファリは、項目数が列数と等しい場合、CSSの列を別々に表示します。
私はCSSを持っている:
はサファリでは、2列目の最初の項目は、時にはそれ以上の見かけ上の余裕を持っています。
私は、リスト要素にdisplay: inline-block;
を追加することで、Safariでこれを修正することができます。これにより、Chromeのレイアウトが分割されます。これは、2つの項目のみが第1列の両方の項目をリストしているためです。
スニペット:
ul {
\t moz-column-count:2;
\t -webkit-column-count:2;
\t column-count:2;
column-gap: 2em;
}
li {
-webkit-column-break-inside: avoid;
page-break-inside: avoid;
break-inside: avoid;
width:100%;
\t list-style-type:none;
\t padding:10px;
box-sizing:border-box;
background-color: #90cdc0;
margin-bottom: 2em;
}
<h3>
A
</h3>
<ul>
<li>Anna<p>Sometimes there is additional content</p></li>
<li>Anya</li>
</ul>
<h3>
B
</h3>
<ul>
<li>Bartolo <p>Sometimes there is additional content. The boxes are of variable size.</p></li>
<li>Beatriz</li>
<li>Benedicto</li>
<li>Boggins</li>
</ul>
それはそれはすべてのブラウザで正しく表示されるようで、この2列のディレクトリを離れてスタイルすることは可能ですか?
私は、このソリューションは、同様の高さを有する要素に依存していることも発見しています。将来私はcssの列を避ける可能性が高いです。 – calebtr