28172 sujets

CSS et mise en forme, CSS3

bonjour,

J'ai trouvé cet exemple de css sur votre site : http://css.alsacreations.com/modelesmenus/g01.htm
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Un menu avec multiples survols sans preload d'images</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<style type="text/css">
<!--
/* CSS issu des tutoriels css.alsacreations.com */
body {
background-color: #F5E9CF;
}
ul, li {	/* utilisation de liste pour le menu */
list-style-type: none;	/* suppression des puces de liste */
margin:0;
padding:0;
}
ul {
position: absolute;	/* positionnement pour IE5 et IE5.5 */
top: 50px;
left: 20%;
background: transparent url(g01/newsletter.jpg) top left no-repeat;	/* arrière-plan général du menu */
width: 160px;
padding-top: 57px;
text-align: center;
}
li {display: inline;}	/* correction pour IE5 et IE5.5 */

li a {	/* dimensions et définitions des boutons */
display: block;	/* mise en block de <a> pour lui donner des dimensions */
height: 30px;
width: 160px;
color: #660000;
font-size: 17px;
font-family: georgia, serif;
text-decoration: none;
line-height: 25px;	/* hauteur de ligne pour éviter les paddings */
}
li a:hover {
color: #fff;
background: transparent url(g01/newsletter.jpg) top left no-repeat;
}
a#lien1:hover {	/* décalage de l'arrière-plan pour chaque bouton */
background-position: 0% -327px;
}
a#lien2:hover {
background-position: 0% -357px;
}
a#lien3:hover {
background-position: 0% -387px;
}
a#lien4:hover {
background-position: 0% -417px;
}
a#lien5:hover {
background-position: 0% -447px;
}
a#lien6:hover {
background-position: 0% -477px;
}
a#lien7:hover {
background-position: 0% -507px;
}

/* mentions et copyright */
div#mentions {
  font-family: verdana, arial, sans-serif;
  position: absolute;
  bottom : 200px;
  left : 10px;
  width: 400px;
  margin: 1em;
  padding: 0.5em;
  background: #FFF7D2;
  -moz-border-radius:10px;
  border-radius:10px;
  line-height: 1.1;
  font-size: 0.9em;
}
div#mentions a {
  text-decoration: none;
  color: #222;
}
div#mentions a:hover {
  text-decoration: underline;
  color: black;
}
-->
</style>
</head>
<body>
<ul>
	<li><a id="lien1" href="#">Lien 1</a></li>
	<li><a id="lien2" href="#">Lien 2</a></li>

	<li><a id="lien3" href="#">Lien 3</a></li>
	<li><a id="lien4" href="#">Lien 4</a></li>
	<li><a id="lien5" href="#">Lien 5</a></li>
	<li><a id="lien6" href="#">Lien 6</a></li>
	<li><a id="lien7" href="#">Lien 7</a></li>
</ul>

<div id="mentions">
  <p>Une seule image pour tout le menu, et pas de preload !</p>
  <p>Auteur : Raphaël GOETTER (<a class="test" href="http://www.alsacreations.com">Alsacreations.com</a>)</p>
  <p>Pour obtenir et décortiquer le code : Bouton droit / afficher la source </p>
  <p><a class="test" href="http://css.alsacreations.com/Galeries-de-menus-en-CSS">Retour à la galerie</a></p>
</div>

</body>
</html>


il est parfait pour ce que je veux faire (merci Smiley cligne )

Par contre j'ai un petit soucis pour l'adapter.
en effet, mon menu est appelé par du php dans une box (oscommerce composée de info box title et info box content), du coup, je ne sais pas comment lui indiquer les liens numérotés ou comment l'adapter.

Ma page php :
 class tableBox {
    var $table_border = '0';
    var $table_width = '';
    var $table_cellspacing = '0';
    var $table_cellpadding = '0';
    var $table_parameters = '';
    var $table_row_parameters = '';
    var $table_data_parameters = '';

// class constructor
    function tableBox($contents, $direct_output = false) {
      $tableBox_string = '<table border="' . tep_output_string($this->table_border) . '" width="' . tep_output_string($this->table_width) . '" cellspacing="' . tep_output_string($this->table_cellspacing) . '" cellpadding="' . tep_output_string($this->table_cellpadding) . '"';
      if (tep_not_null($this->table_parameters)) $tableBox_string .= ' ' . $this->table_parameters;
      $tableBox_string .= '>' . "\n";

      for ($i=0, $n=sizeof($contents); $i<$n; $i++) {
        if (isset($contents[$i]['form']) && tep_not_null($contents[$i]['form'])) $tableBox_string .= $contents[$i]['form'] . "\n";
        $tableBox_string .= '  <tr';
        if (tep_not_null($this->table_row_parameters)) $tableBox_string .= ' ' . $this->table_row_parameters;
        if (isset($contents[$i]['params']) && tep_not_null($contents[$i]['params'])) $tableBox_string .= ' ' . $contents[$i]['params'];
        $tableBox_string .= '>' . "\n";

        if (isset($contents[$i][0]) && is_array($contents[$i][0])) {
          for ($x=0, $n2=sizeof($contents[$i]); $x<$n2; $x++) {
            if (isset($contents[$i][$x]['text']) && tep_not_null($contents[$i][$x]['text'])) {
              $tableBox_string .= '    <td';
              if (isset($contents[$i][$x]['align']) && tep_not_null($contents[$i][$x]['align'])) $tableBox_string .= ' align="' . tep_output_string($contents[$i][$x]['align']) . '"';
              if (isset($contents[$i][$x]['params']) && tep_not_null($contents[$i][$x]['params'])) {
                $tableBox_string .= ' ' . $contents[$i][$x]['params'];
              } elseif (tep_not_null($this->table_data_parameters)) {
                $tableBox_string .= ' ' . $this->table_data_parameters;
              }
              $tableBox_string .= '>';
              if (isset($contents[$i][$x]['form']) && tep_not_null($contents[$i][$x]['form'])) $tableBox_string .= $contents[$i][$x]['form'];
              $tableBox_string .= $contents[$i][$x]['text'];
              if (isset($contents[$i][$x]['form']) && tep_not_null($contents[$i][$x]['form'])) $tableBox_string .= '</form>';
              $tableBox_string .= '</td>' . "\n";
            }
          }
        } else {
          $tableBox_string .= '    <td';
          if (isset($contents[$i]['align']) && tep_not_null($contents[$i]['align'])) $tableBox_string .= ' align="' . tep_output_string($contents[$i]['align']) . '"';
          if (isset($contents[$i]['params']) && tep_not_null($contents[$i]['params'])) {
            $tableBox_string .= ' ' . $contents[$i]['params'];
          } elseif (tep_not_null($this->table_data_parameters)) {
            $tableBox_string .= ' ' . $this->table_data_parameters;
          }
          $tableBox_string .= '>' . $contents[$i]['text'] . '</td>' . "\n";
        }

        $tableBox_string .= '  </tr>' . "\n";
        if (isset($contents[$i]['form']) && tep_not_null($contents[$i]['form'])) $tableBox_string .= '</form>' . "\n";
      }

      $tableBox_string .= '</table>' . "\n";

      if ($direct_output == true) echo $tableBox_string;

      return $tableBox_string;
    }
  }
  // ------------------ infoBoxHeading ----------
  class infoBoxHeading extends tableBox {
    function infoBoxHeading($contents, $left_corner = true, $right_corner = true, $right_arrow = false) {
      $this->table_cellpadding = '0';

      if ($left_corner == true) {
        $left_corner = tep_image(DIR_WS_IMAGES . 'infobox/corner_left.gif');
      } else {
        $left_corner = tep_image(DIR_WS_IMAGES . 'infobox/corner_right_left.gif');
      }
      if ($right_arrow == true) {
        $right_arrow = '<a href="' . $right_arrow . '">' . tep_image(DIR_WS_IMAGES . 'infobox/arrow_right.gif', ICON_ARROW_RIGHT) . '</a>';
      } else {
        $right_arrow = '';
      }
      if ($right_corner == true) {
        $right_corner = $right_arrow . tep_image(DIR_WS_IMAGES . 'infobox/corner_right.gif');
      } else {
        $right_corner = $right_arrow . tep_draw_separator('pixel_trans.gif', '11', '14');
      }

      $info_box_contents = array();
      $info_box_contents[] = array(array('params' => '',
                                         'text' => '
			  <table border="0" cellspacing="0" cellpadding="0" width="170" align="left" class="column_left">
			   		<tr><td width="180" height="29" class="column_left_header_txt bg1"> &nbsp; &nbsp;'.$contents[0]['text'].'</td></tr>
			  </table>										 
			   '));

      $this->tableBox($info_box_contents, true);
    }
  } 
  
  // ------------------ infoBox ----------
  class infoBox extends tableBox {
    function infoBox($contents) {
      $info_box_contents = array();
      $info_box_contents[] = array('text' => $this->infoBoxContents($contents));
      $this->table_cellpadding = '0';
    /*?> $this->table_parameters = ' style="background-image:url(images/bg2.gif); background-repeat: no- repeat; background-heigt:33px;"';<?php */
      $this->tableBox($info_box_contents, true);
    }

    function infoBoxContents($contents) {
      $this->table_cellpadding = '0';
      $this->table_parameters = '';
      $info_box_contents = array();
      for ($i=0, $n=sizeof($contents); $i<$n; $i++) {
        $info_box_contents[] = array(  array (  'align' => (isset($contents[$i]['align']) ? $contents[$i]['align'] : ''),
                                           'form' => (isset($contents[$i]['form']) ? $contents[$i]['form'] : ''),
                                           'params' => '',
                                           'text' => '
			  <table border="0" align="left" cellspacing="0" cellpadding="0" class="column_left">				   				  				   									
				   <tr><td>'.(isset($contents[$i]['text']) ? $contents[$i]['text'] : '').'</td></tr>
				 	  <tr><td><img src="/boutique/images/bas_box.gif" alt="" width="170" height="20" /></td></tr>	
				 
			  </table>										   
						
									   
			'));
      }

      return $this->tableBox($info_box_contents);
    }
  }
  // ------------------ infoBoxHeading1 ----------
  class infoBoxHeading1 extends tableBox {
    function infoBoxHeading1($contents, $left_corner = true, $right_corner = true, $right_arrow = false) {
      $this->table_cellpadding = '0';

      if ($left_corner == true) {
        $left_corner = tep_image(DIR_WS_IMAGES . 'infobox/corner_left.gif');
      } else {
        $left_corner = tep_image(DIR_WS_IMAGES . 'infobox/corner_right_left.gif');
      }
      if ($right_arrow == true) {
        $right_arrow = '<a href="' . $right_arrow . '">' . tep_image(DIR_WS_IMAGES . 'infobox/arrow_right.gif', ICON_ARROW_RIGHT) . '</a>';
      } else {
        $right_arrow = '';
      }
      if ($right_corner == true) {
        $right_corner = $right_arrow . tep_image(DIR_WS_IMAGES . 'infobox/corner_right.gif');
      } else {
        $right_corner = $right_arrow . tep_draw_separator('pixel_trans.gif', '11', '14');
      }

      $info_box_contents = array();
      $info_box_contents[] = array(array('params' => ' bgcolor="#F5F5F5"',
                                         'text' => '
			      <table cellspacing="0" cellpadding="0" border="0" class="column_left">
				   		<tr><td class="column_left_header_txt">'.$contents[0]['text'].'</td></tr>
				  </table>										 
						'));

      $this->tableBox($info_box_contents, true);
    }
  } 
  
  // ------------------ infoBox1 ----------
  class infoBox1 extends tableBox {
    function infoBox1($contents) {
      $info_box_contents = array();
      $info_box_contents[] = array('text' => $this->infoBoxContents($contents));
      $this->table_cellpadding = '0';
      $this->table_parameters = ' style=" border-bottom:6px solid #ffffff;"';
      $this->tableBox($info_box_contents, true);
    }

    function infoBoxContents($contents) {
      $this->table_cellpadding = '0';
      $this->table_parameters = ' style=" border:10px solid #F5F5F5;"';
      $info_box_contents = array();
      for ($i=0, $n=sizeof($contents); $i<$n; $i++) {
        $info_box_contents[] = array(  array (  'align' => (isset($contents[$i]['align']) ? $contents[$i]['align'] : ''),
                                           'form' => (isset($contents[$i]['form']) ? $contents[$i]['form'] : ''),
                                           'params' => ' class="column_left" bgcolor="#F5F5F5"',
                                           'text' => '
				  <table border="0" cellspacing="0" cellpadding="0" class="column_left">											
					   <tr><td>'.(isset($contents[$i]['text']) ? $contents[$i]['text'] : '').'</td></tr>						
				   </table>
				'));
      }

      return $this->tableBox($info_box_contents);
    }
  }
  // ------------------ infoBox2 ----------
  class infoBox2 extends tableBox {
    function infoBox2($contents) {
      $info_box_contents = array();
      $info_box_contents[] = array('text' => $this->infoBoxContents($contents));
      $this->table_cellpadding = '0';
      $this->table_parameters = 'class=""';
      $this->tableBox($info_box_contents, true);
    }

    function infoBoxContents($contents) {
      $this->table_cellpadding = '0';
      $this->table_parameters = 'class=""';
      $info_box_contents = array();
      for ($i=0, $n=sizeof($contents); $i<$n; $i++) {
        $info_box_contents[] = array(  array (  'align' => (isset($contents[$i]['align']) ? $contents[$i]['align'] : ''),
                                           'form' => (isset($contents[$i]['form']) ? $contents[$i]['form'] : ''),
                                           'params' => '',
                                           'text' => ''.(isset($contents[$i]['text']) ? $contents[$i]['text'] : '').''));
      }

      return $this->tableBox($info_box_contents);
    }
  }
  //----------------------------------------------- tableBox_output ----------------------------------
 class tableBox_output {
    var $table_border = '0';
    var $table_width = '';
    var $table_cellspacing = '0';
    var $table_cellpadding = '0';
    var $table_parameters = ' ';
    var $table_row_parameters = '';
    var $table_data_parameters = '';

// class constructor
    function tableBox_output($contents, $direct_output = false) {
      $tableBox_string = '<table border="' . tep_output_string($this->table_border) . '" width="' . tep_output_string($this->table_width) . '" cellspacing="' . tep_output_string($this->table_cellspacing) . '" cellpadding="' . tep_output_string($this->table_cellpadding) . '"';
      if (tep_not_null($this->table_parameters)) $tableBox_string .= '' . $this->table_parameters;
      $tableBox_string .= '>' . "\n";

      for ($i=0, $n=sizeof($contents); $i<$n; $i++) {
        if (isset($contents[$i]['form']) && tep_not_null($contents[$i]['form'])) $tableBox_string .= $contents[$i]['form'] . "\n";
        
		 
		 if ($i == 0) { $tableBox_string .= '
		
					<tr><td height="2" colspan="7" class="bg3"><img src="images/spacer.gif" alt="" width="2" height="1"></td></tr>
					 ';} 
					 
		 if ($i != 0) { $tableBox_string .= '

			
			<tr><td colspan="7"><img src="images/spacer.gif" alt="" width="2" height="14"></td></tr>
			<tr><td height="2" colspan="7" class="bg3"><img src="images/spacer.gif" alt="" width="2" height="1"></td></tr>
			 ';} 

					  
		$tableBox_string .= '   
		
		<tr';
        if (tep_not_null($this->table_row_parameters)) $tableBox_string .= ' ' . $this->table_row_parameters;
        if (isset($contents[$i]['params']) && tep_not_null($contents[$i]['params'])) $tableBox_string .= ' ' . $contents[$i]['params'];
        $tableBox_string .= '>' . "\n";

        if (isset($contents[$i][0]) && is_array($contents[$i][0])) {
          for ($x=0, $n2=sizeof($contents[$i]); $x<$n2; $x++) {
            if (isset($contents[$i][$x]['text']) && tep_not_null($contents[$i][$x]['text'])) {
			
                
				
				
				if ($x == 0){
				  $tableBox_string .= '<td style=" width:2px;" class="bg5"><img src="images/spacer.gif" alt="" width="2" height="1"></td>';} 
				  
				 
			  $tableBox_string .= '    <td';
              if (isset($contents[$i][$x]['align']) && tep_not_null($contents[$i][$x]['align'])) $tableBox_string .= ' align="' . tep_output_string($contents[$i][$x]['align']) . '"';
              if (isset($contents[$i][$x]['params']) && tep_not_null($contents[$i][$x]['params'])) {
                $tableBox_string .= ' ' . $contents[$i][$x]['params'];
              } elseif (tep_not_null($this->table_data_parameters)) {
                $tableBox_string .= ' ' . $this->table_data_parameters;
              }
              $tableBox_string .= '>';
              if (isset($contents[$i][$x]['form']) && tep_not_null($contents[$i][$x]['form'])) $tableBox_string .= $contents[$i][$x]['form'];
              $tableBox_string .= $contents[$i][$x]['text'];
              if (isset($contents[$i][$x]['form']) && tep_not_null($contents[$i][$x]['form'])) $tableBox_string .= '</form>';
              $tableBox_string .= '</td><td width="2" class="bg5"><img src="images/spacer.gif" alt="" width="2" height="1"></td>  ' . "\n";
            }
          }
        } else {
          $tableBox_string .= '    <td';
          if (isset($contents[$i]['align']) && tep_not_null($contents[$i]['align'])) $tableBox_string .= ' align="' . tep_output_string($contents[$i]['align']) . '"';
          if (isset($contents[$i]['params']) && tep_not_null($contents[$i]['params'])) {
            $tableBox_string .= ' ' . $contents[$i]['params'];
          } elseif (tep_not_null($this->table_data_parameters)) {
            $tableBox_string .= ' ' . $this->table_data_parameters;
          }
          $tableBox_string .= '>' . $contents[$i]['text'] . '</td>' . "\n";
        }

        $tableBox_string .= '  		</tr><tr><td height="2" colspan="7" class="bg4"><img src="images/spacer.gif" alt="" width="2" height="1"></td></tr>
									
								
		 	' . "\n";
        if (isset($contents[$i]['form']) && tep_not_null($contents[$i]['form'])) $tableBox_string .= '</form>' . "\n";
      }

      $tableBox_string .= '</table>' . "\n";

      if ($direct_output == true) echo $tableBox_string;

      return $tableBox_string;
    }
  }
//---------------- tableBox_output --------------------- 
  class contentBox extends tableBox_output {
    function contentBox($contents) {
      $info_box_contents = array();
      $info_box_contents[] = array('text' => $this->contentBoxContents($contents));
      $this->table_cellpadding = '0';
      $this->table_parameters = ' class="box_width_cont"';
  $this->tableBox_output($contents, true);
    }

    function contentBoxContents($contents) {
      $this->table_cellpadding = '0';
      $this->table_parameters = '';
      return $this->tableBox_output($contents);
    }
  }
// ------------------ contentBoxHeading ---------------------------------------------------------
  class contentBoxHeading extends tableBox {
    function contentBoxHeading($contents) {
      $this->table_width = '';
      $this->table_cellpadding = '0';

      $info_box_contents = array();
      $info_box_contents[] = array( array('params' => '',
                                         'text' => '
			  <table border="0" cellspacing="0" cellpadding="0">
			   	<tr><td width="567" height="29" class="product_header_txt bg2">'.$contents[0]['text'].'</td></tr>
			  </table>										 
			'));

      $this->tableBox($info_box_contents, true);
    }
  }

//---------------- contentBoxHeading_WHATS_NEW --------------------- 
  class contentBoxHeading_WHATS_NEW extends tableBox {
    function contentBoxHeading_WHATS_NEW($contents) {
      $this->table_width = '100%';
      $this->table_cellpadding = '0';

      $info_box_contents = array();
      $info_box_contents[] = array(array('params' => '',
                                         'text' => '
			  <table border="0" cellspacing="0" cellpadding="0">
			   	<tr><td width="567" height="29" class="product_header_txt bg2">'.BOX_HEADING_WHATS_NEW.'</td></tr>
			  </table>										 
			'));

      $this->tableBox($info_box_contents, true);
    }
  }
//---------------- contentBoxHeading_ProdNew --------------------- 
  class contentBoxHeading_ProdNew extends tableBox {
    function contentBoxHeading_ProdNew($contents) {
      $this->table_width = '100%';
      $this->table_cellpadding = '0';

      $info_box_contents = array();
      $info_box_contents[] = array(array('params' => '',
                                         'text' => '
			  <table border="0" cellspacing="0" cellpadding="0">
			   	<tr><td width="567" height="29" class="product_header_txt bg2">'.HEADING_TITLE.'</td></tr>
			  </table>										 
				'));

      $this->tableBox($info_box_contents, true);
    }
  }

  class errorBox extends tableBox {
    function errorBox($contents) {
      $this->table_data_parameters = 'class="errorBox"';
      $this->tableBox($contents, true);
    }
  }

//---------------- tableBox_shopping_cart --------------------- 
class tableBox_shopping_cart {
    var $table_border = '0';
    var $table_width = '';
    var $table_cellspacing = '0';
    var $table_cellpadding = '0';
    var $table_parameters = '';
    var $table_row_parameters = '';
    var $table_data_parameters = '';

// class constructor
    function tableBox_shopping_cart($contents, $direct_output = false) {
      $tableBox_string = '<table border="' . tep_output_string($this->table_border) . '" width="' . tep_output_string($this->table_width) . '" cellspacing="' . tep_output_string($this->table_cellspacing) . '" cellpadding="' . tep_output_string($this->table_cellpadding) . '"';
      if (tep_not_null($this->table_parameters)) $tableBox_string .= ' ' . $this->table_parameters;
      $tableBox_string .= '>' . "\n";

      for ($i=0, $n=sizeof($contents); $i<$n; $i++) {
        if (isset($contents[$i]['form']) && tep_not_null($contents[$i]['form'])) $tableBox_string .= $contents[$i]['form'] . "\n";
       if ($i >= 1) { $tableBox_string .= '
	   
			 <tr><td height="1" class="bg8" colspan="7">'.tep_draw_separator('spacer.gif', '1', '1').'</td></tr>
							  
							  ';}
	   
	    $tableBox_string .= ' <tr';
		
        if (tep_not_null($this->table_row_parameters)) $tableBox_string .= ' ' . $this->table_row_parameters;
        if (isset($contents[$i]['params']) && tep_not_null($contents[$i]['params'])) $tableBox_string .= ' ' . $contents[$i]['params'];
        $tableBox_string .= '>' . "\n";

        if (isset($contents[$i][0]) && is_array($contents[$i][0])) {
          for ($x=0, $n2=sizeof($contents[$i]); $x<$n2; $x++) {
            if (isset($contents[$i][$x]['text']) && tep_not_null($contents[$i][$x]['text'])) {
              if ($x >= 1) $tableBox_string .= '
			  	<td style=" width:1px;" class="bg7">'.tep_draw_separator('spacer.gif', '1', '1').'</td>
			  ';
			  
 			  $tableBox_string .= '     <td';
              if (isset($contents[$i][$x]['align']) && tep_not_null($contents[$i][$x]['align'])) $tableBox_string .= ' align="' . tep_output_string($contents[$i][$x]['align']) . '"';
              if (isset($contents[$i][$x]['params']) && tep_not_null($contents[$i][$x]['params'])) {
                $tableBox_string .= ' ' . $contents[$i][$x]['params'];
              } elseif (tep_not_null($this->table_data_parameters)) {
                $tableBox_string .= ' ' . $this->table_data_parameters;
              }
              $tableBox_string .= '>';
			  
			    if ($i == 0)  $tableBox_string .= tep_draw_shop_top();
				else $tableBox_string .= tep_draw_shop_top();
              if (isset($contents[$i][$x]['form']) && tep_not_null($contents[$i][$x]['form'])) $tableBox_string .= $contents[$i][$x]['form'];
              $tableBox_string .= $contents[$i][$x]['text'];
              if (isset($contents[$i][$x]['form']) && tep_not_null($contents[$i][$x]['form'])) $tableBox_string .= '</form>';
			  if ($i == 0)  $tableBox_string .= tep_draw_shop_bottom();
			  else $tableBox_string .= tep_draw_shop_bottom();
			  
              $tableBox_string .= '</td>' . "\n";
            }
          }
        } else {
          $tableBox_string .= '    <td';
          if (isset($contents[$i]['align']) && tep_not_null($contents[$i]['align'])) $tableBox_string .= ' align="' . tep_output_string($contents[$i]['align']) . '"';
          if (isset($contents[$i]['params']) && tep_not_null($contents[$i]['params'])) {
            $tableBox_string .= ' ' . $contents[$i]['params'];
          } elseif (tep_not_null($this->table_data_parameters)) {
            $tableBox_string .= ' ' . $this->table_data_parameters;
          }
          $tableBox_string .= '>'.tep_draw_shop_top_1() . $contents[$i]['text'] . tep_draw_shop_bottom_1().'</td>' . "\n";
        }

        $tableBox_string .= '  </tr>' . "\n";
		
/*  if ($i >= 2) {  */
 $tableBox_string .= '
										 
 ';
 /*  }  */		
		
        if (isset($contents[$i]['form']) && tep_not_null($contents[$i]['form'])) $tableBox_string .= '</form>' . "\n";
      }

      $tableBox_string .= '</table>' . "\n";

      if ($direct_output == true) echo $tableBox_string;

      return $tableBox_string;
    }
  }
  class productListingBox extends tableBox_shopping_cart {
    function productListingBox($contents) {
      
      $this->tableBox_shopping_cart($contents, true);
    }
  }
 // -------------------------------------- --------------------------  
  function tep_draw_heading_top77()
  {
 			 /*   require(DIR_WS_BOXES . 'panel_top.php')  */; 
  echo '';
  } 
// -------------------------------------- --------------------------  
  function tep_draw_heading_top()
  {
 			  require(DIR_WS_BOXES . 'panel_top.php'); 
  echo '';
  }
// -------------------------------------- --------------------------  
function tep_draw_heading_bottom()
{

echo '
';
}
// -------------------------------------- --------------------------
// -------------------------------------- --------------------------  
  function tep_draw_heading_top_1()
  {
  echo '
			  <table border="0" cellspacing="0" cellpadding="0" class="border3">
			  		<tr><td class="border2"> 
			   			<table cellpadding="0" cellspacing="0" border="0">
							<tr><td>
					<table border="0" cellspacing="0" cellpadding="0" align="center">
					 
					 <tr><td height="2" class="bg3" colspan="3"></td></tr>
					 <tr><td width="2" class="bg5">'.tep_draw_separator('spacer.gif', '2', '1').'</td>
					     <td width="100%">							
			    ';
 			
  }
// -------------------------------------- --------------------------  
function tep_draw_heading_bottom_1()
{

echo ' 
						 </td>
						 <td width="2" class="bg5">'.tep_draw_separator('spacer.gif', '2', '1').'</td></tr>
					 <tr><td height="2" class="bg4" colspan="3"></td></tr>
					 
					</table>									
							</td></tr>
						</table>
					</td></tr>
				</table>
';
}
// -------------------------------------- --------------------------  
  function tep_draw_heading_top_3()
  {
  echo '
			  <table border="0" cellspacing="0" cellpadding="0" class="border3">
			  		<tr><td class="border2"> 
			   			<table cellpadding="0" cellspacing="0" border="0">
							<tr><td>
							
			    ';
 			
  }
// -------------------------------------- --------------------------  
function tep_draw_heading_bottom_3()
{

echo ' 
								
							</td></tr>
						</table>
					</td></tr>
				</table>
';
}
// -------------------------------------- --------------------------
// -------------------------------------- --------------------------   
  function tep_draw_heading_top_2()
  {
 			/*  require(DIR_WS_BOXES . 'panel_top.php');  */ 
  echo '';
  }
// -------------------------------------- --------------------------  
function tep_draw_heading_bottom_2()
{

echo '';
} 
// -------------------------------------- --------------------------
  function  tep_draw_prod_top()
  {
  return $table = '';
  }
// -------------------------------------- --------------------------
  function  tep_draw_prod_bottom()
  {
   return $table =  '';
  }
  // -------------------------------------- --------------------------
  function  tep_draw_shop_top()
  {
  return $table = '';
  }
// -------------------------------------- --------------------------
  function  tep_draw_shop_bottom()
  {
   return $table =  '';
  }
  // -------------------------------------- --------------------------
  function  tep_draw_shop_top_1()
  {
  return $table = '';
  }
// -------------------------------------- --------------------------
  function  tep_draw_shop_bottom_1()
  {
   return $table =  '';
  }
// -------------------------------------- --------------------------  
  function tep_draw_result_top()
  {
  echo '';
  }
// -------------------------------------- --------------------------  
function tep_draw_result_bottom()
	{
	echo '';
	}
// -------------------------------------- --------------------------  

  	// ------------------ infoBox_77 ----------
	class infoBox_77 extends tableBox {
	function infoBox_77($contents) {
	  $info_box_contents = array();
	  $info_box_contents[] = array('text' => $this->infoBoxContents($contents));
	  $this->table_cellpadding = '0';
	  $this->table_parameters = 'class=""';
	  $this->tableBox($info_box_contents, true);
	}
	
	function infoBoxContents($contents) {
	  $this->table_cellpadding = '0';
	  $this->table_parameters = ' class="product"';
	  $info_box_contents = array();
	  for ($i=0, $n=sizeof($contents); $i<$n; $i++) {
		$info_box_contents[] = array(  array (  'align' => (isset($contents[$i]['align']) ? $contents[$i]['align'] : ''),
										   'form' => (isset($contents[$i]['form']) ? $contents[$i]['form'] : ''),
										   'params' => '',
										   'text' => ''.(isset($contents[$i]['text']) ? $contents[$i]['text'] : '').''));
	  }
	
	  return $this->tableBox($info_box_contents);
	}
	}
	// ------------------ infoBox_78 ----------
	class infoBox_78 extends tableBox {
	function infoBox_78($contents) {
	  $info_box_contents = array();
	  $info_box_contents[] = array('text' => $this->infoBoxContents($contents));
	  $this->table_cellpadding = '0';
	  $this->table_cellspacing = '1';
	  $this->table_parameters = 'class="infoBox"';
	  $this->tableBox($info_box_contents, true);
	}
	
	function infoBoxContents($contents) {
	  $this->table_cellpadding = '0';
	   $this->table_cellspacing = '15';
	  $this->table_parameters = 'class="infoBoxContents "';
	  $info_box_contents = array();
	  for ($i=0, $n=sizeof($contents); $i<$n; $i++) {
		$info_box_contents[] = array(  array (  'align' => (isset($contents[$i]['align']) ? $contents[$i]['align'] : ''),
										   'form' => (isset($contents[$i]['form']) ? $contents[$i]['form'] : ''),
										   'params' => ' class="main"',
										   'text' => ''.(isset($contents[$i]['text']) ? $contents[$i]['text'] : '').''));
	  }
	
	  return $this->tableBox($info_box_contents);
	}
	}


Si vous avez des idées ou des astuces, je suis preneuse Smiley biggrin
Bonjour,

Personne ici ne va être en mesure de faire quoi que ce soit de ton code PHP. Celui-ci s'intègre à une application (oscommerce), peut difficilement être analysé à l'oeil nu (à moins d'avoir un interpréteur PHP dans le cerveau Smiley cligne ), et au final ce n'est pas le code PHP qui compte mais le code HTML généré.

Donc: il faut que tu t'attaches à produire le code HTML exact dont tu as besoin pour ton menu. Si tu n'arrives pas à le faire à cause d'oscommerce qui ne serait pas assez souple ou que tu ne maitrises pas, il faut poser la question sur le forum d'oscommerce.

Bonne continuation. Smiley smile