2015-01-24 13 views
5

Projektuję stronę za pomocą Bootstrap 3.1, w której jeśli długość łącza HTML jest zbyt długa, przepełnia się i tworzy poziomy przewijak w wersji mobilnej. Czy istnieje sposób na skrócenie i zastąpienie go elipsami?Obcinaj długie linki w Bootstrapie

Przykład:

enter image description here

Co potrzebne jest, że zamiast rozszerzania się, że powinien dostać obcięta przed granicą. KAŻDY pomysł, jak to zrobić?

Odpowiedz

7

Musisz upewnić się, że kontener ma overflow: hidden, aby tekst nie przepływał poza granicę i nadać mu text-overflow: ellipsis, aby nadać linkowi elipsę.

.box { 
 
    background: #f99; 
 
    border: 1px solid #c66; 
 
    width: 100px; 
 
    padding: 7px; 
 
    margin-bottom: 15px; 
 
} 
 

 
.nowrap { 
 
    white-space: nowrap; 
 
} 
 

 

 
.ellipsis { 
 
    overflow: hidden; 
 
    text-overflow: ellipsis; 
 
}
<div class="box"> 
 
    <span class="nowrap">A really long piece of text</span> 
 
</div> 
 

 
<div class="box ellipsis"> 
 
    <span class="nowrap">A really long piece of text</span> 
 
</div>

+0

'text-overflow: ellipsis' nie wydają się działać. Każdy pomysł, dlaczego? – Ranveer

+0

Również o stronie, o której mówię: http://planet.kde.org.uk/ Mogłabym po prostu ukryć przepełniony tekst (hiperłącze), ale nie będzie to dobrze. – Ranveer

+0

Obawiam się, że trzeba niestety dodać 'overflow: hidden' i' text-overflow: ellipsis' do elementu nadrzędnego znacznika 'a'. W tym przypadku jest to tag 'p'. – ckuijjer