2013-01-21 17 views
6

Resim ve metin içeren bir div var. Metin sadece bir satır alırsa, metnin dikey olarak görüntünün merkezine hizalanmasını istiyorum. Metin bir satır metinden daha fazla alırsa, metnin üst kısmının görüntünün üst kısmı ile hizalanmasını istiyorum.CSS - Yeni Satıra Taşan İçerik Varsa Başka Bir Stil Uygula

CSS, bir sonraki satıra kaydırıldığında CSS'nin bir algılama yolu var mı?

+0

no, css bu tür şeyler algılayamaz. Sadece bir stil dilidir ve karar verme potansiyeli yoktur –

+0

@SvenBieder Teşekkür ederiz. İşte bu düşündüğüm şey. Cevabınızı gönderebilir, böylece cevap olarak kabul edebilirim. – Jon

+0

jQuery'yi kullanırsanız, metninizin uzunluğunu sayar ve bir sınıf uygulayan bir koşul oluşturabilirsiniz. ($ ('yourdiv'). text(). uzunluk <100) {$ (this) .addClass ('small')} else {....} –

cevap

5

Hayır, CSS böyle şeyler algılayamaz. Bu sadece bir stil dilidir ve karar verme potansiyeli yoktur.

+2

bu tek/çok satır için doğru iken, CSS can kararlar vermek. ortam sorguları ve ': boş ', tarayıcıda neler olup bittiğine ilişkin CSS kararlarının iyi örnekleridir. Genel olarak her sözde sınıf CSS kararları verir. Sözde Sınıfların bir listesini bulun: https://developer.mozilla.org/de/docs/Web/CSS/Pseudo-classes İnşallah bunlar bir "sahte" gibi tek bir sınıf ekleyebilirler: : metin-sarma 'bazen. – ProblemsOfSumit

2

Hayır, bu mümkün değil. Ancak, kelimelerin "sarma" ya da bir sonraki satıra geçmesini önlemek mümkündür. Bu işlev tüm tarayıcılar tarafından tam olarak desteklenmese de. Buna word-wrap denir.

+0

Gerdirilecek metne ihtiyacım var, ancak alternatif bir çözüm sunduğunuz için teşekkür ederim. – Jon

İlgili konular