占める div 内に収まらない長いテキストがあります。div クラスは次のとおりです。
.mydiv {
overflow:hidden;
padding:3px 3px 3px 5px;
white-space:nowrap;
}
もちろん、テキストの一部しか見えません。問題は、最初の N 文字が表示され、最後の N 文字を表示したいことです。CSSでそれを達成するにはどうすればよいですか? Text-align
ここでは役に立ちません。
占める div 内に収まらない長いテキストがあります。div クラスは次のとおりです。
.mydiv {
overflow:hidden;
padding:3px 3px 3px 5px;
white-space:nowrap;
}
もちろん、テキストの一部しか見えません。問題は、最初の N 文字が表示され、最後の N 文字を表示したいことです。CSSでそれを達成するにはどうすればよいですか? Text-align
ここでは役に立ちません。
テキストを別の要素でラップできる場合は、この fiddleに示すように機能させることができます。<span>
ネストされたものを右に浮かせました。
<div class="wrap">
<div class="window">Lots of text</div>
</div>
.wrap { overflow: hidden; position: relative; }
.window { position: absolute; right: 0px; }
CSSだけでそれを行うことができます:
<div style="width: 150px; border: 1px solid red; overflow: hidden; position: relative; height: 2em;">
<div style="position: absolute; right: 0px; padding: .5em;white-space:nowrap;">
aaaaaaaaaaaabbbbbbbbbcccccccccccccccccddddddddddddddddddddeeeeeeeeeeeeeeeeeeeeffffffffffffffffffffgggggggggggggggggggghhhhhhhhhhhhhhhhiiiiiiiiiiiii
</div>
</div>
(Firefox.YMMVでテスト済み)
div を右端までスクロールするには、javascript を使用する必要があります。
var obj = document.getElementById("div-id");
obj.scrollLeft = obj.scrollWidth - obj.clientWidth