Partage
  • Partager sur Facebook
  • Partager sur Twitter

Erreur validation W3C :'(

qui peut m'éclairer svp ?

Sujet résolu
    21 juin 2006 à 16:31:09

    Bonjour à tous !

    Voici l'erreur que j'ai lorsque je teste le validateur W3C :

    document type does not allow element "SCRIPT" here; missing one of "TH", "TD" start-tag.

    <script language="javascript" type="text/javascript">

    The mentioned element is not allowed to appear in the context in which you've placed it; the other mentioned elements are the only ones that are both allowed there and can contain the element mentioned. This might mean that you need a containing element, or possibly that you've forgotten to close a previous element.

    One possible cause for this message is that you have attempted to put a block-level element (such as "<p>" or "<table>") inside an inline element (such as "<a>", "<span>", or "<font>").


    Voici l'erreur que j'ai eu ...

    voici mon code :

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
                    "http://www.w3.org/TR/html4/loose.dtd">



                    <html>

                            <head>
                                    <title><?php echo $titre ; ?> </title>
                                    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

                                    <link href="styles.css" rel="stylesheet" type="text/css">
                            </head>

                    <body>
                            <table width="100%"  border="0" cellspacing="0" cellpadding="0">
     
                              <tr>
                        <td>&nbsp;</td>
                           
                                                    <!-- Definition de la place au dessus du header selon le navigateur -->
                                                    <script language="javascript" type="text/javascript">
                                                            var navactu = navigator.appName;
           
                      if(navactu=="Microsoft Internet Explorer") // si le navigateur est IE alors ...
                      {
                     document.write('<td width="770" style="padding-top:22px">');
                      }
                      else // sinon ...
                      {
                  document.write('<td width="770" style="padding-top:14px">');
                      }
                                    </script>


    Quelqu'un sait ce que je dois changer ? Je ne vois pas trop :s

    Merci d'avance
    • Partager sur Facebook
    • Partager sur Twitter
      21 juin 2006 à 16:50:05

      Lut

      Il se plaint car ta balise <script> n'est pas dans une cellule....
      • Partager sur Facebook
      • Partager sur Twitter
        21 juin 2006 à 17:10:26

        le problème c'est que je ne peut pas mettre ma condition dans une balise TD ... :(

        En fait, je met un padding différent dans la balise TD en fonction du navigateur et si je met mon code comme ça :

        <td><!-- Definition de la place au dessus du header selon le navigateur -->
                <script language="javascript" type="text/javascript">
                                                                var navactu = navigator.appName;
               
                          if(navactu=="Microsoft Internet Explorer") // si le navigateur est IE alors ...
                          {
                         document.write('<div style=" width:770px; padding-top:22px"></div>');
                          }
                          else // sinon ...
                          {
                      document.write('<div style="width:770px; padding-top:14px"></div>');
                          }
                                        </script>
        </td>


        il me dit ça :

        end tag for element "DIV" which is not open.


        alors qu'il est bien ouvert ... o_O

        merci encore de m'aider ;)
        • Partager sur Facebook
        • Partager sur Twitter
          21 juin 2006 à 17:10:39

          Tu ne peux pas le mettre au pif dans ton tableau à un endroit aléatoire, hein.

          PS : Hawksounet, vive Albator.
          • Partager sur Facebook
          • Partager sur Twitter
            21 juin 2006 à 17:22:11

            Mon but n'était pas de le mettre au pif mais je vais essayer cette solution, on verra bien

            <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
                            "http://www.w3.org/TR/html4/loose.dtd">



                            <html>

                                    <head>
                                            <title><?php echo $titre ; ?> </title>
                                            <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

                                            <link href="styles.css" rel="stylesheet" type="text/css">
                                    </head>

                            <body>
                                    <table width="100%"  border="0" cellspacing="0" cellpadding="0">
             
                                      <tr>
                                <td>&nbsp;</td>
                                   
                                                            <td><!-- Definition de la place au dessus du header selon le navigateur -->
                                                            <script language="javascript" type="text/javascript">
                                                                    var navactu = navigator.appName;
                   
                              if(navactu=="Microsoft Internet Explorer") // si le navigateur est IE alors ...
                              {
                             document.write('<td width="770" style="padding-top:22px">');
                              }
                              else // sinon ...
                              {
                          document.write('<td width="770" style="padding-top:14px">');
                              }
                                            </script>
                                                            </td>


            Je viendrais donner le résultat dans 5 min :)

            EDIT : Le pb si je met ça, ça plante mon design :( mais c'est valide !! :p:p
            • Partager sur Facebook
            • Partager sur Twitter
              21 juin 2006 à 17:43:07

              Et une solution sans JS????

              Genre

              <td width="770" style"padding-top: 22px!important; padding-top: 14px;">



              @Alty: ;)


              Edit
              Sinon les comm conditionnels?
              • Partager sur Facebook
              • Partager sur Twitter
                21 juin 2006 à 17:51:51

                Argl, un tableau destiné à la mise en page visuelle !
                Change ça de suite avant que yöm n'arrive et pique une crise.
                • Partager sur Facebook
                • Partager sur Twitter
                  21 juin 2006 à 17:52:05

                  Je n'ai pas bien compris à quoi servait le !important ... ça vérifie que IE n'est pas le navigateur actuel ?

                  Je vais essayer mais je ne connaissais pas, voila pourquoi j'utilisait JS

                  EDIT : Ceci doit me faire comprendre qu'il faut que je refasse tout le design avec les div ? :)
                  • Partager sur Facebook
                  • Partager sur Twitter
                    21 juin 2006 à 17:55:30

                    Tu réalises que si Javascript n'est pas activé, ton site est invisitable ? De plus, je vois pourquoi tu utilises des tableaux ici, on n'est plus en 1990 :-°

                    Le CSS résoudra ton problème, par exemple pour avoir une marge de 10 pixels sous un navigateur respecteux des standards et une marge de 12 pixels sur IE (qui est un cas particulier), il te suffit de mettre ça dans ton CSS :

                    p{
                    margin:10px !important;
                    margin:12px
                    }
                    • Partager sur Facebook
                    • Partager sur Twitter
                      21 juin 2006 à 17:57:35

                      Ok, alors il ne me reste plus qu'a refaire tout le design ... pfiou !! :)

                      Merci de votre aide ;)
                      • Partager sur Facebook
                      • Partager sur Twitter
                        21 juin 2006 à 19:05:21

                        Tant qu'a faire, passe en xhtml 1.0
                        • Partager sur Facebook
                        • Partager sur Twitter

                        Erreur validation W3C :'(

                        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                        • Editeur
                        • Markdown