2011-12-24 4 views
2

div 너비에 따라 html 태그를 추가하는 방법은 무엇입니까?PHP는 div 너비에 따라 HTML 태그를 추가

출력 HTML로

PHP 코드 :

echo '<div>'; 
$json = json_decode($json_data); 
foreach ($json as $data){ 
    echo '<p>'.$data->title.'</p>'; 
} 
echo '</div>'; 

이 밖으로 것이다 넣어 :

<div> 
<p>TWELFTH NIGHT</p> 
<p>MERRY CHRISTMAS</p> 
<p>CHRISTMAS GIFT</p> 
<p>XMAS</p> 
<p>HARD CANDY CHRISTMAS</p> 
<p>GOD REST YE MERRY, GENTLEMEN</p> 
<p>GOD SPEED THE PLOUGH; PLOUGH MONDAY</p> 
<p>CHRISTMAS CARDS </p> 
</div> 

CSS

div{padding:0;margin:0;width:500px;overflow:hidden;float:left;} 
p{float:left;font-size:12px;font-family:arial sans-serif;padding:0 10px 0 10px} 
h2{padding:0 10px 0 10px;} 

SEE 검토 일부

http://jsfiddle.net/sRVsP/ IN div 너비가 500px이기 때문에이 선으로 바뀝니다. 그리고 http://jsfiddle.net/sRVsP/1/

에 삽입 <h2>toggle</h2> 후 (500px에 포함 <h2>toggle</h2>) 첫 번째 줄의 끝에서

SEE을 <h2>toggle</h2>를 추가 할이 수 PHP에서 jQuery로 쉽게 할 수 있지만 어렵습니다. 나는 각 단어는 다음과 같이 폭 계산해야 할 수 있습니다 다음, font-size:12px;font-family:arial sans-serif;의 글꼴 폭, 왼쪽에서 오른쪽 패딩 20px에 대한

$json = json_decode($json_data); 
foreach ($json as $data){ 
    echo (strlen($data->title)*7+20).'<br />'; 
} 

6px-7px 뭔가 판사가 words width plus 폭 수행, 그것은 또한 삽입 <h2>toggle</h2> 폭을 고려해야한다 ...

아무도 내 질문을 해결하기위한 좋은 방법을 제공 할 수 있습니까? 첫 번째 줄의 끝에 자동 삽입 <h2>toggle</h2>, 너무 많은 경우 p이 div에서 줄을 바꿉니 까?

내 생각에 맞지 않을 수 있습니다 ... 감사합니다.

+1

PHP에는 누군가의 브라우저에서 페이지가 어떻게 보이는지 개념이 없습니다. 또한 HTML처럼 CSS를 파싱 할 수 없기 때문에 div가 얼마나 넓게 설정되었는지와 같은 정보를 얻을 수 없습니다. 귀하의 유일한 선택은 귀하의 페이지 디자인을 다시 생각하는 것일 수 있습니다. – GordonM

+0

@GordonM, 예, PHP도 CSS를 파싱 할 수 없다는 것을 알고 있습니다. 그렇다면 제 상황을 다시 설계하라는 권고가 있습니까? 감사. –

답변

0

이것은 분명히 PHP에서 할 수있는 과장입니다. this one과 같은 jQuery 플러그인을 사용하여 div의 높이를 제한하고 div 아래에 '더보기'버튼을 배치하는 것이 좋습니다.

관련 문제