2016-04-08 7 views
0

Ich muss die Zeichen abschneiden, wenn Benutzer das div fokusiert, zeigt es alle Zeichen ohne zu schneiden an.contenteditable single-line zeigt alle Zeichen mit CSS

Wir archiviert die gleiche, aber wir haben ich mehrere Zeilen

aber Benutzer müssen die div Notwendigkeit alle Zeichen in einzelnen Zeile zeigen konzentrieren.

DEMO

HTML:

Dies sollte worksThis sollte funktioniert Dies sollte worksThis sollte worksThis sollte worksThis sollte worksThis sollte worksThis sollte worksThis sollte worksThis sollte worksThis sollte worksThis sollte funktioniert

CSS:

.single-line { 
    white-space: nowrap; 
    overflow: hidden; 
    text-overflow: ellipsis; 
    display: inline-block; 
    vertical-align: top; 
} 

    [contenteditable="true"].single-line { 
     white-space: nowrap; 
     width:200px; 
     overflow: hidden; 
    } 
    [contenteditable="true"].single-line br { 
     display:none; 

    } 
    [contenteditable="true"].single-line * { 
     display:inline; 
     white-space:nowrap; 
    } 


.single-line:focus { 
    white-space:normal; 
} 

Antwort

0

Vielleicht so?

See this fiddle

Ich füge einen festen height auf dem Behälter und deaktivieren Sie die text-overflow Eigenschaft auf Fokus.

.single-line:focus { 
    text-overflow: inherit; 
} 
+0

Ich beginne Zeichen bearbeiten Volltext wird ausblenden – CodeMan

0

einfach die width-auto wie folgt aktualisiert:

.single-line:focus { 
    width: auto; 
} 


Überprüfen Sie die demo

+1

: Wir brauchen keine Breite zu erhöhen. wie man das archiviert – CodeMan

+0

Ich fand es heraus, indem ich spann.space addierte und ihm die Extrabreite gab, die Sie so hinzufügen möchten: .space { Breite: 50px; Anzeige: Inline-Block! } Überprüfen Sie es hier https://jsfiddle.net/L304y4ua/10/ –

0

diese Änderung in der: foucs CSS.

+0

wir brauchen keine Breite zu erhöhen. wie man das archiviert – CodeMan