2014-03-05 6 views
0

div을 다른 div을 제외하고 테이블에 집중시키는 방법은 무엇입니까?div를 div의 옆으로 정렬 CSS - PHP

echo '<table border="0" cellspacing="1" cellpadding="7" width="100%">'; 
    echo '<tr bgcolor="'.$config['site']['purple'].'">'; 
     echo '<td align="center">'; 
      foreach($image as $img){ 
       echo '<div style="width:24%;height:130px;position:relative;float:left;margin:2px auto;background-image:url('.$img['location'].');background-size:100%;"></div>'; 
      } 
     echo '</td>'; 
    echo '</tr>'; 
echo '</table>'; 

나는 그것은 <td>의 왼쪽에서 중앙이 아닌 여전히 완벽하게 옆으로 한 다른 된 div를 받고 있지만 있어요.

문제를 해결하는 방법은 무엇입니까?

+0

빠른 (!) 참고는 : 태그 내부의 CSS를 넣어 별도의 CSS 스타일 시트를 사용하여 응답을위한 클래스를 div의에게 – GroundZero

+0

감사를주고, 내가 이것을 시도하지 않습니다. – user3050478

+0

센터링의 경우 : 'auto'의 왼쪽 및 오른쪽 여백은 객체를 가로로 정렬합니다. 당신은 당신의 예제에서했던 것처럼 객체에 너비를 설정해야합니다. 'margin : top/bottom right/left; ' – GroundZero

답변

1

이 JSFiddle을 확인하십시오. P

http://jsfiddle.net/5c2Vj/

참고 : 당신은 내가 생각했던 것보다 덜 형식을 필요로 내가 수동으로 테스트 목적으로 일부 사업부의의를 추가했습니다.

HTML

<table border="0" cellspacing="1" cellpadding="7" width="100%"> 
    <tr bgcolor="purple"> 
     <td align="center"> 
      <div class="image" style="background-image: url(https://stackoverflow.com/content/stackoverflow/img/apple-touch-icon.png)"></div> 
      <div class="image" style="background-image: url(https://stackoverflow.com/content/stackoverflow/img/apple-touch-icon.png)"></div> 
      <div class="image" style="background-image: url(https://stackoverflow.com/content/stackoverflow/img/apple-touch-icon.png)"></div> 
      <div class="image" style="background-image: url(https://stackoverflow.com/content/stackoverflow/img/apple-touch-icon.png)"></div> 
      <div class="image" style="background-image: url(https://stackoverflow.com/content/stackoverflow/img/apple-touch-icon.png)"></div> 
     </td> 
    </tr> 
</table> 

CSS상의 TR-요소에 align="center"

div.image { 
    display: inline-block; 
    width: 24%; 
    height:130px; 
    border: 1px solid black; /* For visual reference */ 
} 

덕분에, 사업부의의 중심입니다.
코드를 정리할 때 (스타일에서 HTML 분리) 해당 행에 CSS 클래스를 사용할 수도 있습니다.


편집 :

내가 한 약간을 TestRun (CSS-클래스 제외).

$config['site']['purple'] = "purple"; 
$image = array(
    'StackOverflow' => 'https://stackoverflow.com/content/stackoverflow/img/apple-touch-icon.png', 
    'W3C' => 'http://www.propra.nl/img/w3c.png', 
    'CSS' => 'http://a.dryicons.com/images/icon_sets/coquette_part_5_icons_set/png/128x128/css_file.png', 
    'HTML' => 'http://a.dryicons.com/images/icon_sets/coquette_part_5_icons_set/png/128x128/html_file.png', 
    'LifeIsPain' => 'http://oldpunks.com/1iconlifeispain.gif' 
); 

echo '<table border="0" cellspacing="1" cellpadding="7" width="100%"> 
    <tr bgcolor="'.$config['site']['purple'].'"> 
     <td align="center">'; 
      foreach($image as $name => $location){ 
       echo '<div style="display: inline-block; width: 24%; height:130px; border: 1px solid black; background-image:url('.$location.');background-size:100%;"></div>'; 
      } 
     echo '</td> 
    </tr> 
</table>'; 
+1

감사합니다 @GroundZero, 이제 divs를 제쳐두고 완벽하게 td 요소의 중심! – user3050478

+1

@ user3050478 [PHP Sandbox] (http://sandbox.onlinephpfunctions.com/code/c99b0f02777554232d5acea31faa22c53f7f19c0)도 확인할 수 있습니다. 결과를 시각적 인 결과를 위해 [JS-fiddle] (http://jsfiddle.net/GVBwv/1/)에서 사용할 수 있습니다. – GroundZero

+0

감사! 이 함수를 사용하여 프로그램을 찾고 있었지만 코드에서 JS- 바이올린을 보았습니다. 이제이를 복사합니다. – user3050478