Discussion:
Espaces intra et inter cellules non prises en compte
(trop ancien pour répondre)
R.L.
2007-10-18 15:53:44 UTC
Permalink
Bonjour,

Quelques soient la valeur des 2 derniers arguments passés à la fonction
(ici, 8 et 8), le résultat ne change pas à l'affichage.
MEn outre, même si je modifie en dur (4 et 4), il n'y a pas de modif. à
l'affichage.
Voici mon code :

<?php
function create_table2( $data, $border = 1, $cellpadding = 4,
$cellspacing = 4 )
{
echo "<table border = $border cellpadding = $cellpadding"
."cellspacing = $cellspacing>";
reset($data);
$value = current($data);
while ($value)
{
echo "<tr><td>$value</td></tr>\n";
$value = next($data);
}
echo "</table>";
}
$my_array = array('Vlad.','Ilo.','Oli.');
create_table2($my_array, 5, 8, 8); // *** les 2 dernières valeurs ne
sontpas prises en compte ! ***
?>

-----------
Une piste ?

Merci.
Rosa
Olivier Miakinen
2007-10-18 17:37:18 UTC
Permalink
Post by R.L.
<?php
function create_table2( $data, $border = 1, $cellpadding = 4,
$cellspacing = 4 )
{
echo "<table border = $border cellpadding = $cellpadding"
."cellspacing = $cellspacing>";
[...]
Post by R.L.
create_table2($my_array, 5, 8, 8); // *** les 2 dernières valeurs ne
sontpas prises en compte ! ***
?>
-----------
Une piste ?
Facile ! La valeur de cellpadding est collée au nom de l'attribut
cellspacing, comme tu devrais t'en rendre compte en regardant le code
source HTML généré :
<table border = 5 cellpadding = 8cellspacing = 8>

Note que ces attributs seraient mieux dans des règles CSS, et par
ailleurs il peut être utile de mettre des guillemets (même si ce
n'est obligatoire qu'en XHTML).

Sans CSS :
echo "<table border='$border' cellpadding='$cellpadding'"
. " cellspacing='$cellspacing'>\n";

Avec CSS :
(voir du côté de fr.comp.infosystemes.www.auteurs)
CrazyCat
2007-10-18 17:37:18 UTC
Permalink
Post by R.L.
function create_table2( $data, $border = 1, $cellpadding = 4,
$cellspacing = 4 )
{
echo "<table border = $border cellpadding = $cellpadding"
."cellspacing = $cellspacing>";
create_table2($my_array, 5, 8, 8); // *** les 2 dernières valeurs ne
sontpas prises en compte ! ***
En essayant de faire un code propre et conforme:
echo "<table border=\"".$border." cellpadding=\"".$cellpadding."\"
cellspacing="\".$cellspacing."\">";

Je ne suis pas bien sur que les navigateurs apprécient les espaces entre
les attributs et leur valeurs, ni l'absence de guillemets autour des
valeurs.
--
Discussions et débats sur l'actualité: http://www.sujets-d-actu.eu
Réseau IRC Francophone: http://www.crazy-irc.net
Carbo
2007-10-18 17:37:18 UTC
Permalink
Post by R.L.
echo "<table border = $border cellpadding = $cellpadding"
."cellspacing = $cellspacing>";
echo "<table border=\"$border\" cellpading=\"$cellpading\"
cellspacing=\"$cellspacing\">";

les espaces entourant les = ne sont pas très appréciés en html ;-)
--
<http://uon.be/blog/>
Olivier Miakinen
2007-10-18 18:16:27 UTC
Permalink
[ copie et suivi dans fr.comp.infosystemes.www.auteurs ]

Bonjour,

À propos d'un code HTML ressemblant à ceci :
<table border = 5>
Post by Carbo
les espaces entourant les = ne sont pas très appréciés en html ;-)
Je ne suis pas bien sur que les navigateurs apprécient les espaces entre
les attributs et leur valeurs, ni l'absence de guillemets autour des
valeurs.
En ce qui concerne l'absence de guillemets, c'est sûr que c'est interdit
en XHTML mais autorisé en HTML pour certains types de valeurs (comme ici
en l'occurrence pour des nombres).

En revanche, pour ce qui est de la présence ou de l'absence d'espaces
autour du signe « = », je sais que c'est autorisé en XHTML, mais je n'ai
pas trouvé l'information pour HTML. Quelqu'un aurait un pointeur sur la
syntaxe SGML ?

Olivier

Mihamina Rakotomandimby
2007-10-18 17:37:18 UTC
Permalink
Post by R.L.
Bonjour,
Bonjour,
Post by R.L.
<?php
function create_table2( $data, $border = 1,
$cellpadding = 4,
$cellspacing = 4 )
{
echo "<table border = $border cellpadding = $cellpadding"
."cellspacing = $cellspacing>";
Regarde un peu, dans les sources de la page génrée le code HTML que
donne cette partie.
Je suis certain que tu verras de suite ce qui se passe.
Continuer la lecture sur narkive:
Loading...