Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

onclick et dt

16 réponses
Avatar
unbewusst.sein
le validateur "valdone" me dit que mon xhtml est invalide because j'ai
un attribut "onclick" dans une balise "dt".

je suis surpris...

où trouver la liste des attibuts valides ?

--
Une Bévue

10 réponses

1 2
Avatar
Lea GRIS
Une Bévue a écrit :
le validateur "valdone" me dit que mon xhtml est invalide because j'ai
un attribut "onclick" dans une balise "dt".

je suis surpris...

où trouver la liste des attibuts valides ?



Dans la DTD ?

Sinon, pourquoi ne met tu pas un lien avec une vraie URL sans javascript
et un évènement onclick associé à l'intérieur de ton dt s'il s'agit
d'enclencher une action ?

Ca aura l'avantage d'être sémantiquement plus clair et fonctionnera
aussi avec les navigateurs sans javascript.

--
Léa Gris
Avatar
Yamo'
Salut,
le Wed, 19 Mar 2008 08:45:56 +0100, Une Bévue a écrit dans le message
<1ie1k5d.1dl7ftv18stpc9N% :

où trouver la liste des attibuts valides ?



Dans la dtd.

Par exemple si je l'ai compris pour :
http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd

pour dt on a le droit d'utiliser : charset, href, hreflang, type , rel,
rev, media

Je n'ai pas trouvé de document plus clair (par contre j'en ai trouvé pour
le html 4.01)




Stéphane
--
MZ: Ouverture du marché de l'électricité à la concurrence, l'an prochain.
DG: Je pourrai choisir mon fournisseur en électricité ????
MZ: Oui: quand tu mettras thermostat 7, la Générale des Eaux chauffera le
four.
-+- in: Guide du Cabaliste Usenet - Bien configurer son four -+-
Avatar
unbewusst.sein
Lea GRIS wrote:

Dans la DTD ?



mais c'est bien sûr ;-)

euh, sauf que, j'ai "la" dtd sous les yeux, elle renvoie à d'autre dtd,
pas si facile de trouver les attributs permis pour dt...

ensuite, petite enquête, je lis, à la page
<http://learningforlife.fsu.edu/webmaster/references/xhtml/tags/list/dt.
cfm> :

dt: valid attributes
by attribute type
Core: class, id, title
Internationalization: dir, xml:lang
Events: onclick, ondblclick, onkeydown, onkeypress, onkeyup,
onmousedown, onmousemove, onmouseout, onmouseover, onmouseup
Style: style

donc, si ce site est exact ce serait le vaidateur qui déconne ?
ce qui me trouble est que cette page (non accessible de l'extérieur) je
l'ai justement validée, il y a un ou deux ans justement avec valdone...

de plus je ne vois pas pourquoi les concepteurs des dtds pour le xhtml
auraient supprimé cet attribut "onclick"...

qui marche très bien avec Firefox 3.0b4 ...

Sinon, pourquoi ne met tu pas un lien avec une vraie URL sans javascript
et un évènement onclick associé à l'intérieur de ton dt s'il s'agit
d'enclencher une action ?



ben le "onclick", justement, servait à visualiser le contenu du dt :

<dt class="nav" onclick="toggleDd(this,event);">CSS play</dt>
<dd>
<ul class="nav">
<li class="nav"><a class="nav" href="....
...
<li...
</ul>
</dd>

mais bon, avec un dt:hover dd { display:block; }
je dois pouvoir faire la même chose sans JS...

euh, enfin, en survol + css ça ne donne pas la même chose, je veux dire,
il faut maintenir la souris au dessus du menu déployé pour le conserver
déployé, le js, c'est différent, ça agit comme un switch on/off
(déployé/replié).

je relis ta réponse, il me suffirait, pour être conforme à la dtd xhtml
1.1 de remplacer :

<dt class="nav" onclick="toggleDd(this,event);">CSS play</dt>

par :

<dt class="nav"><a href="#" onclick="toggleDd(this,event);">CSS
play</a></dt>

et de changer légérement mon js pour obtenir la même fonctionalité.

Ca aura l'avantage d'être sémantiquement plus clair et fonctionnera
aussi avec les navigateurs sans javascript.



franchement je ne vois pas ce que vient faire la "sémantique" dans une
fonctionnalité...

ceci dit je ne connait rien à ce qui s'appelle "sémantique" associé au
web...
--
Une Bévue
Avatar
SAM
Une Bévue a écrit :
le validateur "valdone" me dit que mon xhtml est invalide because j'ai
un attribut "onclick" dans une balise "dt".

je suis surpris...



il doit être mal formé ou codé ...

genre : oubli de " ou de ' ou mal-emploi des 2 ?

genre : onClick (pas tt en minuscules)

genre : tu as mal lu et ils te parlent de on clic
ou onclic ou onclick etc ...


où trouver la liste des attibuts valides ?



J'ai cru comprendre que onclick est générique (implied)
<http://www.w3.org/TR/xhtml1/dtds.html#dtdentry_xhtml1-strict.dtd_events>

--
sm
Avatar
SAM
Yamo' a écrit :

Par exemple si je l'ai compris pour :
http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd



mon Fx refuse de m'afficher ça
je suis obligé de passer par :
<http://www.w3.org/TR/xhtml1/dtds.html>

pour dt on a le droit d'utiliser : charset, href, hreflang, type , rel,
rev, media



ce qui n'empêche peut-être pas d'utiliser les génériques (implied)
sur le lien ci-dessus chercher 'Generic Attributes'

--
sm
Avatar
SAM
Une Bévue a écrit :

ben oui

dt: valid attributes
Events: onclick, ondblclick, onkeydown, onkeypress, onkeyup,
onmousedown, onmousemove, onmouseout, onmouseover, onmouseup

donc, si ce site est exact ce serait le vaidateur qui déconne ?

<dt class="nav" onclick="toggleDd(this,event);">CSS play</dt>



tu es certain que c'est à cette ligne que ça foire ?
(elle a l'air OK)

<dd>
<ul class="nav">
<li class="nav"><a class="nav" href="....
...
<li...
</ul>
</dd>

mais bon, avec un dt:hover dd { display:block; }
je dois pouvoir faire la même chose sans JS...

euh, enfin, en survol + css ça ne donne pas la même chose, je veux dire,
il faut maintenir la souris au dessus du menu déployé pour le conserver



Meu non !

dt:focus dd { display:block; }

déployé, le js, c'est différent, ça agit comme un switch on/off
(déployé/replié).



pour le truc CSS faudra cliquer ailleurs

je relis ta réponse, il me suffirait, pour être conforme à la dtd xhtml
1.1 de remplacer :

<dt class="nav" onclick="toggleDd(this,event);">CSS play</dt>

par :

<dt class="nav"><a href="#" onclick="toggleDd(this,event);">CSS
play</a></dt>



Non :
<a href="#" onclick="toggleDd(this,event);return false;"
ou :
<a href="#" onclick="return toggleDd(this,event);"
et toggleDd() renvoie toujours false


Ca aura l'avantage d'être sémantiquement plus clair et fonctionnera
aussi avec les navigateurs sans javascript.





??? heu ... tu m'expliques ? avec href="#" ça va pas faire grd chose.

ceci dit je ne connait rien à ce qui s'appelle "sémantique" associé au
web...



Ce n'est pas très compliqué :
tu visualises ta page sans CSS ni JS et regarde si ça a l'air clair et
fonctionnel en simple HTML (ce sera déjà un bon début)

--
sm
Avatar
unbewusst.sein
Yamo' wrote:

Par exemple si je l'ai compris pour :
http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd

pour dt on a le droit d'utiliser : charset, href, hreflang, type , rel,
rev, media




ben, malheureusement ce n'est pas ce que dit la page
<http://learningforlife.fsu.edu/webmaster/references/xhtml/tags/list/dt.
cfm> je ne vois d'ailleurs pas pourquoi les concepteurs de cette dtd
auraient, pour quelle raison ?, supprimé l'attribut "onclick" sur dt...

à la page citée en référence j'ai :
------------------------------------------------------------------------
dt: valid attributes
by attribute type
Core: class, id, title
Internationalization: dir, xml:lang
Events: onclick, ondblclick, onkeydown, onkeypress, onkeyup,
onmousedown, onmousemove, onmouseout, onmouseover, onmouseup
Style: style
------------------------------------------------------------------------

et d'ailleurs, je suis "à peu près" sûr que cette page était valide sur
valdone il y a deux ans...

Je n'ai pas trouvé de document plus clair (par contre j'en ai trouvé pour
le html 4.01)



et là en html 401 on a bien le droit à cet attribut ...

bon, c'est pas si facile de savoir à quoi on a droit...
--
Une Bévue
Avatar
SAM
SAM a écrit :
Une Bévue a écrit :
euh, enfin, en survol + css ça ne donne pas la même chose, je veux dire,
il faut maintenir la souris au dessus du menu déployé pour le conserver



Meu non !

dt:focus dd { display:block; }



Merdum!
ça ne peut fonctionner qu'avec qque chose qui *peut* avoir le focus :
- lien
- champ, textarea, (bouton ?) de formulaire

Ce qui reviendrait à faire par exemple :

<li>
<a href="#" onclick="return false;">
<h2>Durand</h2>
<img src="durand.gif" alt="">
<dl>
<dt>Adresse personnelle:</dt>
<dd>2, rue de la Momie qui tousse</dd>
<dd>75007 Paris</dd>
<dt>Adresse travail :</dt>
<dd>56, rue du Zombi qui fume</dd>
<dd>75007 Paris</dd>
</dl>
</a>
</li>

li a dl { display: none }
li a:hover dl,
li a:focus dl { display: block }


et un JS quand même pour annuler le lien html :-(


--
sm
Avatar
unbewusst.sein
SAM wrote:

> je suis surpris...

il doit être mal formé ou codé ...

genre : oubli de " ou de ' ou mal-emploi des 2 ?

genre : onClick (pas tt en minuscules)

genre : tu as mal lu et ils te parlent de on clic
ou onclic ou onclick etc ...




le texte de valdone <http://www.validome.org> :
Colonne: 58

Erreurs:

Attribute 'onclick' is not permitted to appear in element 'dt'.

Position de l'erreur:

<dt class="nav" onclick="toggleDd(this,event);">CSS play</dt>

(il faut quand-même que j'ajoute le fameux "return false;"...)

mon code actuel :
------------------------------------------------------------------------
<dt class="nav" onclick="toggleDd(this,event);">CSS play</dt>
<dd>
<ul class="nav">
<li class="nav"><a class="nav"
href="http://www.cssplay.co.uk">Home</a></li>
[...]
<li class="nav"><a class="nav"
href="http://www.cssplay.co.uk/opacity/index.html"
Opacity</a></li>


</ul>
</dd>

------------------------------------------------------------------------

> où trouver la liste des attibuts valides ?

J'ai cru comprendre que onclick est générique (implied)
<http://www.w3.org/TR/xhtml1/dtds.html#dtdentry_xhtml1-strict.dtd_events>



ouais, ouf !
--
Une Bévue
Avatar
unbewusst.sein
SAM wrote:

> Par exemple si je l'ai compris pour :
> http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd

mon Fx refuse de m'afficher ça
je suis obligé de passer par :
<http://www.w3.org/TR/xhtml1/dtds.html>

> pour dt on a le droit d'utiliser : charset, href, hreflang, type , rel,
> rev, media

ce qui n'empêche peut-être pas d'utiliser les génériques (implied)
sur le lien ci-dessus chercher 'Generic Attributes'



qui donne :

<!-- attributes for common UI events
onclick a pointer button was clicked
ondblclick a pointer button was double clicked
onmousedown a pointer button was pressed down
onmouseup a pointer button was released
onmousemove a pointer was moved onto the element
onmouseout a pointer was moved away from the element
onkeypress a key was pressed and released
onkeydown a key was pressed down
onkeyup a key was released
-->

donc OK en xhtml 1, reste à le vérifier pour le 1.1...
--
Une Bévue
1 2