2013-06-01 16 views
14

Aşağıdakileri yapmaya çalışıyorum, belirli genişliğe sahip, 30% ve 1 satırlık metin yazabiliyor, ancak ... metin uzunsa, <div> genişliği de değişecek duyarlı bir tasarım olduğu için ... buna göre ayarlanmalıdır. Ancak, bir kişi bu üzerinde gezinirse, genişliğini uzatmalıdır (kesinlikle konumlandırılacaktır, bu nedenle belirli sınırların dışına çıkılmasına izin verilir.) Ve tüm satırları aynı satırda göstermelidir.Metin, belirli bir genişlikte uzandığında otomatik olarak "..." ibaresini ekleyin, ancak üzerine gelindiğinde gösterilsin mi?

Örnek:

This is text that fits 


This is text that doesn't fit inside ... 


This is text that doesn't fit inside, but is visible on hover. 

Değil emin HTML ve CSS ve çalışma çapraz tarayıcı saf ile yapılabilir eğer, belki biraz taşma gizli yedek? veya başka bir şeyle elde edilemezse JQuery.

cevap

27

Bu pure CSS ile mümkündür:

#test { 
    width: 50px; 
    text-overflow: ellipsis; 
    white-space: nowrap; 
    overflow: hidden; 
} 

#test:hover { 
    overflow: visible; 
} 

http://jsfiddle.net/qyNUG/

+0

vay, o kadar basit, metin taşma varlığı, teşekkür bilmiyordum! – Ilja

+0

Merhaba, ilginç bir şey fark ettim, #text div için bir arka plan rengini ayarlarsanız, hover üzerinde çalışmıyor http://jsfiddle.net/qyNUG/3/ herhangi bir fikir nasıl düzeltilir? hatta ayarlamayı denedi! önemli, işe yaramadı – Ilja

+0

iyi nvm, anladım http://jsfiddle.net/qyNUG/4/ – Ilja

5

Bu piksel genişliği dayanan bir CSS3 versiyonudur. Eğer bu metni içinde çalışacak belli bir boyuta sahip bir kapsayıcınız varsa, o zaman genişlik kullanabilirsiniz:% 100; içinde çalışmak.

jsfiddle

<p>This is text that doesn't fit inside, but is visible on hover.</p> 


p { 
    display: inline-block; 
    max-width: 200px; 
    overflow: hidden; 
    text-overflow: ellipsis; 
    white-space: nowrap; 
} 
p:hover { 
    max-width: none; 
} 
+0

Max-width kullanmamın sebebi, açığa çıkma konusunda bir geçiş yapabilir. metin gibi, http://jsfiddle.net/jamestoone/RPgaN/4/ – 2ne

+0

iyi bir fikir, ama neden "max-width"? Sadece genişlik çalışması olmaz mı? – georg

+0

Bu örnekte genişlik kullanabilirsiniz, ancak maksimum genişliğin uygulandığı öğe hiçbir zaman belirtilen değerden daha geniş olmayacağı için maksimum genişliğin amaç için daha uygun olduğunu hissediyorum. – 2ne

İlgili konular