こんにちは。私は、背景画像として使用される多数の小さな画像(おそらく数百)を含む1つの大きな画像を提供するウェブページの技術を探しています。特定のdivまたはliの場合多くの小さな画像を扱うための非スプライトCSS/Javascript
CSS spritesのジョブのように聞こえますが、スプライトは1つの画像を表示するために囲むdiv(またはボックス)に依存しています。
しかし、私が使用したい画像は、個々のスプライト画像(およびそれらの間に残すスペース)よりも任意の大きさの領域にあります。これは、まだ広く実装されていないようだが、CSS3のメディア断片の提案で扱われたケースである。
また、これらのimage hacksは役に立ちますが、追加のスパンを挿入することは問題ありません(または:機構の前に)。
もしそれを避けたいのであれば、これを巧妙なjavascriptで実現するテクニックはありますか?たとえば、1つの大きな画像をブラウザに送り、JavaScriptをメモリにスライスし、個々の画像を異なるCSSの背景ルールに割り当てる実用的なテクニックがありますか?
IE <= 7をサポートする必要がない場合、擬似要素を使用している問題はどこですか? – Christoph
これは確かに有効な質問です。私の主な嫌悪感は、何千ものDOM要素に複雑さのレイヤーを追加する前と、UIレスポンスでDOMエレメントに対処しなければならないjavascriptとCSSを使用することです。受け入れられるかもしれませんが、単純なDOMを維持するソリューションを見て、問題をDOMに押し込むのではなく、事前に計算しておく必要があります。 – gwideman
さらに、DOM要素がレイアウト上で他の近くの要素とやりとりする前に、どのように追加されたかについての複雑さが導入されています。その目的がliの背景イメージアイコンを保持することであれば、追加されたコンテナ要素は、様々なサイズ変更条件の下でliテキスト、補助的なulなどの残りの部分とうまくやります。おそらくそれはありますが、やはり複雑さを増すことを避ける代替手段を検討する価値があります。 – gwideman