묻고답하기
줄 수를 판단해서 제한할 수 있을까요?
2014.06.05 10:39
음.. 리스트에서 getSummary()를 사용하여 요약글(?)을 출력하고 있습니다.
현재는 그냥 글자수 제한을 걸어서 사용하고 있긴한데...
혹시 해당 텍스트의 줄(?)을 기준으로 제한할 수 있을까요?
예를 들어 3줄까지만 나오게 한다던지...
php로는.. 아마 안될 것 같고..
(왜냐면 줄바꿈 없이 길게 쭉~~ 작성하면 자동으로 줄바꿈이 되는데 이걸 판단 할 수 가 없을 것 같음..)
아마 자바로... 구현이 가능할지... (의문)
단순히 <br/>로 판단하기에는.. 앞서 말씀드렸다시피... 줄바꿈없이 길 게 쓸 경우에는 그냥 한줄로 오해할 수 있기 때문에....
단순히 글자수를 계산해서 해당 페이지에 총 뿌려지는 글자수를 직접 체크한 후에 해당 글자수만큼 뿌리고 자동 <br/>을 붙여서 <br/>의 수를 카운팅해서 하는 방법은.. 가능하겠지만
가변형 사이트에는 적합하지 않는 문제로.. 현재 PASS하고 있습니다.
댓글 3
-
sejin7940
2014.06.05 11:24
-
애니즌
2014.06.05 11:31
네 말씀하신 것처럼 현재는 그렇게 적용되어 있지만.. 욕심이란 게 생겨서 혹시 다른 방법이 있지 않을까 했습니다.
한번 머리를 부여잡고 고민 좀 해야겠네요 ㅎㅎ
-
prologos
2014.06.05 13:28
html:
<div id='container'> <span id='text'>TEXT: 123456789012345678901234567890</span> </div>
css:
#container { width: 200px; height: 60px; line-height: 20px; position: relative; }
jquery:
var $container = $('#container'); var $text = $('#text'); var originalText = $text.text(); var temp = originalText; if($container.outerHeight() < $text.outerHeight()) { while($container.outerHeight() < $text.outerHeight()) { $text.text(temp = temp.substr(0, temp.length-1)); } $text.text(temp = temp.substr(0, temp.length-3)); $text.append('...'); }
이런식으로 구성해서 자르지않은 #text를 우선 출력하고 script에서 #container의 height와 line-height를 이용해서 height를 벗어나는(위의 예에서는 4번째 라인부터 해당) 라인은 잘라버리는 방법도 가능하겠지만...
overflow:hidden과 차이가 있을까요??
height 를 강제로 지정하고, overflow:hidden 처리하는 방법으로 하셔야할겁니다.