Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

<a> et ce qu'il y a dedans

0 views
Skip to first unread message

Sergio

unread,
Dec 19, 2009, 5:52:32 AM12/19/09
to
Question :
Bon, "�a marche chez moi" (FF 3.5 et Chrome), mais est-ce l�gal dans un lien de mettre entre le <a> et le </a> tout une <div> avec
des div inbriqu�s dedans ? :

<a href="toto.html"><div>toute une construction...</div></a>

Ma page � question :
http://touchalon.free.fr

--
Serge http://leserged.online.fr/
Mon blog: http://cahierdesergio.free.fr/
Soutenez le libre: http://www.framasoft.org

Message has been deleted

Olivier Miakinen

unread,
Dec 19, 2009, 7:33:06 AM12/19/09
to
Le 19/12/2009 12:24, bruno666 a ï¿œcrit :
>
>> Bon, "ï¿œa marche chez moi" (FF 3.5 et Chrome), mais est-ce lï¿œgal dans un

>> lien de mettre entre le <a> et le </a> tout une <div> avec des div
>> inbriquï¿œs dedans ? :

>>
>> <a href="toto.html"><div>toute une construction...</div></a>
>
> Non ce n'est pas permis. Pas d'ï¿œlï¿œments de type bloc dans un ï¿œlï¿œment en
> ligne.

En effet.

> http://validator.w3.org/check?verbose=1&uri=http%3A%2F%2Ftouchalon.free.fr%2F
>
> par contre tu peux utiliser des balises <span> (en-ligne) dans un ï¿œlï¿œment
> <a> et des rï¿œgles de style display:block;

Une autre possibilitᅵ, puisque le but semble ᅵtre d'interdire toute
autre action sur une page que le clic pour aller ᅵ la page suivante,
ce serait de rajouter par dessus une page complï¿œte un <a>...</a>
remplissant tout l'espace, mais de couleur transparente. Je ne sais
pas exactement comment le dï¿œclarer mais ï¿œa devrait pouvoir se faire,
peut-ï¿œtre en position absolue...

--
Olivier Miakinen

docanski

unread,
Dec 19, 2009, 12:59:46 PM12/19/09
to
Alors que les eleveurs et agriculteurs polluent toujours la Bretagne,
Sergio ecrit ce qui suit en ce 19/12/2009 11:52 :
> Question :
> Bon, "ï¿œa marche chez moi" (FF 3.5 et Chrome), mais est-ce lï¿œgal dans un
> lien de mettre entre le <a> et le </a> tout une <div> avec des div
> inbriquï¿œs dedans ? :

> <a href="toto.html"><div>toute une construction...</div></a>

Non, comme te l'ont dit bruno et Olivier.

Par contre, ceci est possible :

<?xml version="1.0" encoding="iso-8859-1"?>
<!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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>lien occupant 100 % d'une page</title>
</head>
<body>
<div id="centre"><h1>ton titre</h1>
<a href="#"
style="width:100%;height:100%;position:absolute;top:0;left:0">&nbsp;</a>
Tu ï¿œcris ce que tu veux et tu mets ce que tu veux dans le conteneur ...
s'il y en a un.
</div>
</body></html>

Cordialement,
--
docanski

Portail et annuaire du nord-Bretagne : http://armorance.free.fr/
Guide des champignons d'Europe : http://mycorance.free.fr/
La vallï¿œe de la Rance maritime : http://valderance.free.fr/
Les cï¿œtes du nord de la Bretagne : http://docarmor.free.fr/

SAM

unread,
Dec 19, 2009, 2:10:09 PM12/19/09
to
Le 12/19/09 1:33 PM, Olivier Miakinen a ï¿œcrit :

la difficultᅵ est d'arriver ᅵ recouvrir tout le body

La soluce de Dokanski ne recouvrira que le 1er ï¿œcran
(au scroll plus bas ... hop! plus de lien)

--
sm

Olivier Miakinen

unread,
Dec 19, 2009, 5:16:01 PM12/19/09
to
Le 19/12/2009 20:10, SAM a ï¿œcrit :

>
> la difficultᅵ est d'arriver ᅵ recouvrir tout le body

Oui, mais voir plus loin...

> La soluce de Dokanski ne recouvrira que le 1er ï¿œcran
> (au scroll plus bas ... hop! plus de lien)

En l'occurrence, l'exemple donnᅵ par Sergio n'a pas de gros risques de
dᅵpasser un seul ᅵcran, et ᅵ la limite ce n'est pas trᅵs grave : la
personne qui ᅵ la fois aurait un ᅵcran trop petit, scrollerait jusqu'ᅵ
ne voir que ᅵ ᅵditions Touchalon ᅵ, essaierait de cliquer sans succᅵs
dessus, et ne penserait pas ᅵ revenir en arriᅵre pour cliquer sur le
titre ᅵ Tirage de tᅵte ᅵ, aurait ᅵtᅵ problablement perdue sur la page
suivante... ;-)

Cela dit, je ne vois pas non plus pourquoi ne pas tout remplacer par une
image (sans oublier bien sï¿œr le texte alternatif) :

<a href="site" title="Cliquez pour rentrer"><img
src="img/tirage-de-tete.png" alt="..." /></a>

Tout simplement.

--
Olivier Miakinen

docanski

unread,
Dec 19, 2009, 5:21:42 PM12/19/09
to
Alors que les eleveurs et agriculteurs polluent toujours la Bretagne,
SAM ecrit ce qui suit en ce 19/12/2009 20:10 :

> la difficultᅵ est d'arriver ᅵ recouvrir tout le body
> La soluce de Dokanski ne recouvrira que le 1er ï¿œcran
> (au scroll plus bas ... hop! plus de lien)

Il est vrai que les 100 % correspondent ᅵ la hauteur de la fenᅵtre
affichï¿œe au dï¿œpart par le navigateur.
Une solution empirique consisterait ᅵ prᅵvoir une page dont le contenu
ne dï¿œpasserait pas une hauteur de 500 pixels, par exemple, moyenne
(empirique, je le rï¿œpï¿œte : 800px x 500 px) des fenï¿œtres affichï¿œes par
les utilisateurs. Seconde solution, tout aussi empirique : styler une
hauteur de 150 ou 200 % p.e., voire davantage, si le contenu est plus
volumineux et en se basant toujours sur cette moyenne. Le plus gros
risque serait d'avoir un espace vide plus ou moins important si le
visiteur affiche des fenï¿œtres de plus grande hauteur. Je ne vois pas
vraiment d'autre solution pouvant respecter la sï¿œmantique des FdS. S'il
y a une solution plus ᅵlᅵgante, ce petit problᅵme excite ma curiositᅵ.

docanski

unread,
Dec 19, 2009, 5:40:15 PM12/19/09
to
Alors que les eleveurs et agriculteurs polluent toujours la Bretagne,
Olivier Miakinen ecrit ce qui suit en ce 19/12/2009 23:16 :

> Cela dit, je ne vois pas non plus pourquoi ne pas tout remplacer par une
> image (sans oublier bien sï¿œr le texte alternatif) :
>
> <a href="site" title="Cliquez pour rentrer"><img
> src="img/tirage-de-tete.png" alt="..." /></a>
>
> Tout simplement.

Au dï¿œpart, je n'avais pas suivi le lien de Sergio, je viens seulement de
le faire et, en effet, vu le contenu de cette page, la solution d'une
image serait la plus simple.

SAM

unread,
Dec 19, 2009, 7:20:11 PM12/19/09
to
Le 12/19/09 11:21 PM, docanski a ï¿œcrit :

> Alors que les eleveurs et agriculteurs polluent toujours la Bretagne,
> SAM ecrit ce qui suit en ce 19/12/2009 20:10 :
>
>> la difficultᅵ est d'arriver ᅵ recouvrir tout le body
>> La soluce de Dokanski ne recouvrira que le 1er ï¿œcran
>> (au scroll plus bas ... hop! plus de lien)
>
> Il est vrai que les 100 % correspondent ᅵ la hauteur de la fenᅵtre
> affichï¿œe au dï¿œpart par le navigateur.
(...)

> S'il
> y a une solution plus ᅵlᅵgante, ce petit problᅵme excite ma curiositᅵ.

Moi itou, c'est bien pourquoi le doigt de ma main y a mis le pied.

--
sm

Antoine Polatouche

unread,
Dec 19, 2009, 11:26:53 PM12/19/09
to
SAM a ï¿œcrit :

>> S'il y a une solution plus ï¿œlï¿œgante, ce petit problï¿œme excite ma
>> curiositᅵ.
>
> Moi itou, c'est bien pourquoi le doigt de ma main y a mis le pied.
>

<head>
<style type="text/css">
.partout {
display: block;
position:fixed !important;
position:absolute;
bottom:0;
right:0;
top:0;
left:0;
}
</style>
</head>
<body>
<div id="centre"><h1>ton titre</h1></div>
<div>
<a class="partout" href="#">&nbsp;</a>


Tu ï¿œcris ce que tu veux et tu mets ce que tu veux dans le conteneur ...
s'il y en a un.

<a href="http://painbio.com">PUB</a>
</div>
</body>

Sergio

unread,
Dec 20, 2009, 3:15:02 AM12/20/09
to
Olivier Miakinen a ï¿œcrit :

> Cela dit, je ne vois pas non plus pourquoi ne pas tout remplacer par une


> image (sans oublier bien sï¿œr le texte alternatif) :
>
> <a href="site" title="Cliquez pour rentrer"><img
> src="img/tirage-de-tete.png" alt="..." /></a>
>
> Tout simplement.

C'est la solution de facilitᅵ, ᅵa :-)

Pour l'instant, je laisse un peu tomber. ᅵ terme il y aura un accueil un peu plus chiadᅵ, avec une image de fond rigolote et un lien
vers les principaux articles directement dedans...

Sergio

unread,
Dec 20, 2009, 3:57:26 AM12/20/09
to
docanski a ï¿œcrit :

> Par contre, ceci est possible :
>
> <?xml version="1.0" encoding="iso-8859-1"?>
> <!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">
> <head>
> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
> <title>lien occupant 100 % d'une page</title>
> </head>
> <body>
> <div id="centre"><h1>ton titre</h1>
> <a href="#"
> style="width:100%;height:100%;position:absolute;top:0;left:0">&nbsp;</a>
> Tu ï¿œcris ce que tu veux et tu mets ce que tu veux dans le conteneur ...
> s'il y en a un.
> </div>
> </body></html>

Rajouter un z-index:2 pour le lien et un z-index:1 pour la div globale.
Nï¿œanmoins, avec Opera, le z-index n'a pas l'air de se propager dans les "sous-div". (ï¿œa marche avec FF et Chrome).

Sergio

unread,
Dec 20, 2009, 4:07:51 AM12/20/09
to
Sergio a ï¿œcrit :

> Rajouter un z-index:2 pour le lien et un z-index:1 pour la div globale.
> Nï¿œanmoins, avec Opera, le z-index n'a pas l'air de se propager dans les
> "sous-div". (ï¿œa marche avec FF et Chrome).

Par contre, je m'aperï¿œois que IE (7 et 8) se vautre complï¿œtement dans la prï¿œsentation... grrrr... Le coup de l'image n'est pas si
bï¿œte que ï¿œa...

SAM

unread,
Dec 20, 2009, 6:11:52 AM12/20/09
to
Le 12/20/09 9:57 AM, Sergio a ï¿œcrit :

> docanski a ï¿œcrit :
>
>> Par contre, ceci est possible :
>>
>> <?xml version="1.0" encoding="iso-8859-1"?>
>> <!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">
>> <head>
>> <meta http-equiv="Content-Type" content="text/html;
>> charset=ISO-8859-1" />
>> <title>lien occupant 100 % d'une page</title>
>> </head>
>> <body>
>> <div id="centre"><h1>ton titre</h1>
>> <a href="#"
>> style="width:100%;height:100%;position:absolute;top:0;left:0">&nbsp;</a>
>> Tu ï¿œcris ce que tu veux et tu mets ce que tu veux dans le conteneur
>> ... s'il y en a un.
>> </div>
>> </body></html>
>
> Rajouter un z-index:2 pour le lien et un z-index:1 pour la div globale.

Les z-index c'est du blabla
(les navigateurs en font un peu ce qu'ils veulent)

> Nï¿œanmoins, avec Opera, le z-index n'a pas l'air de se propager dans les
> "sous-div". (ï¿œa marche avec FF et Chrome).

Le truc est de mettre le A juste avant la fermeture du body
(il a ainsi naturellement le z-index le + ᅵlevᅵ)


--
sm

docanski

unread,
Dec 20, 2009, 6:32:05 AM12/20/09
to
Alors que les eleveurs et agriculteurs polluent toujours la Bretagne,
Sergio ecrit ce qui suit en ce 20/12/2009 09:57 :

> Rajouter un z-index:2 pour le lien et un z-index:1 pour la div globale.
> Nï¿œanmoins, avec Opera, le z-index n'a pas l'air de se propager dans les
> "sous-div". (ï¿œa marche avec FF et Chrome).

En utilisant un position:fixed au lieu de position:absolute, il n'y a
plus de problï¿œme de hauteur de page.
C'est toujours ï¿œa de pris.
L'indexation des ï¿œlï¿œments est inutile : elle ne fonctionne ni avec Opera
ni avec IE (je n'ai que le 6 pour essayer)
Par contre, ï¿œa roule sans problï¿œme avec la famille Mozilla.
Reste ᅵ trouver des bᅵquilles (une fois de plus pour le premier !) pour
MSIE et Opera qui, chose rare, se vautre aussi lamentablement que le
machin ᅵditᅵ ᅵ Redmond.

SAM

unread,
Dec 20, 2009, 9:01:50 AM12/20/09
to
Le 12/20/09 12:32 PM, docanski a ï¿œcrit :

> Alors que les eleveurs et agriculteurs polluent toujours la Bretagne,
> Sergio ecrit ce qui suit en ce 20/12/2009 09:57 :
>
>> Rajouter un z-index:2 pour le lien et un z-index:1 pour la div globale.
>> Nï¿œanmoins, avec Opera, le z-index n'a pas l'air de se propager dans
>> les "sous-div". (ï¿œa marche avec FF et Chrome).
>
> En utilisant un position:fixed au lieu de position:absolute, il n'y a
> plus de problï¿œme de hauteur de page.

ᅵ mon idᅵe, IE a besoin du layout (et il semblerait que Opera aussi)
<http://msdn.microsoft.com/en-us/library/ms533776(VS.85).aspx>

C'est donc mieux en fixant les dimensions
width: 100%; height: 100%;
ou peut-ï¿œtre en mettant : display: inline-block; ?
(pas essayᅵ)

Il faut aussi ajouter le background pour Opera
background: url(inconnu.jpg) repeat top left;
l'image n'existe pas pour de vrai mais ᅵa suffit ᅵ tromper Opera.9.6
Par contre si on met 'transparent' pour le fond ... ᅵa continue ᅵ
merdouiller (le H1 n'est pas rï¿œactif)

Bon, et en plus, tout ï¿œa doit rï¿œagir diffï¿œremment suivant le doctype ?
(testᅵ avec html4.1.0 strict)

> L'indexation des ï¿œlï¿œments est inutile : elle ne fonctionne ni avec Opera
> ni avec IE (je n'ai que le 6 pour essayer)

il faut utiliser l'indexation de couche obtenue naturellement par le
flux html.
(le A doit ᅵtre tout ᅵ la fin du fichier)

> Par contre, ï¿œa roule sans problï¿œme avec la famille Mozilla.

Finalement, c'est ch..t ces navigateurs qui fonctionnent ;-)

--
sm

rm

unread,
Dec 21, 2009, 5:50:09 AM12/21/09
to
Salut,
Le dimanche 20 d�cembre 2009 � 12:32, docanski a �crit :

> Alors que les eleveurs et agriculteurs polluent toujours la Bretagne,
> Sergio ecrit ce qui suit en ce 20/12/2009 09:57 :
>
>> Rajouter un z-index:2 pour le lien et un z-index:1 pour la div globale.

>> N�anmoins, avec Opera, le z-index n'a pas l'air de se propager dans les
>> "sous-div". (�a marche avec FF et Chrome).

Est-ce que � �a marche avec FF et Chrome � signifie-t-il, ici, que FF et
Chrome respectent le Standard ?

> En utilisant un position:fixed au lieu de position:absolute, il n'y a

> plus de probl�me de hauteur de page.
> C'est toujours �a de pris.
> L'indexation des �l�ments est inutile : elle ne fonctionne ni avec Opera

> ni avec IE (je n'ai que le 6 pour essayer)

> Par contre, �a roule sans probl�me avec la famille Mozilla.

Opera documente son impl�mentation de z-index sur
http://dev.opera.com/articles/view/37-css-absolute-and-fixed-positioning/#zindex
mais ne dit pas implicitement faire � tout comme Gecko ou Webkit � :-D

> Reste � trouver des b�quilles (une fois de plus pour le premier !) pour

> MSIE et Opera qui, chose rare, se vautre aussi lamentablement que le

> machin �dit� � Redmond.

Je ne m'y connais pas trop mais en essayant de d�chiffrer
http://www.w3.org/TR/CSS2/visuren.html#z-index je ne vois pas o� Opera
violerait la sp�cification...
Vous autres sp�cialistes des Standards sauront sans doute m'�clairer ;)

@+
--
rm - http://opera-fr.com

SAM

unread,
Dec 21, 2009, 7:24:31 AM12/21/09
to
Le 12/21/09 11:50 AM, rm a �crit :
> Salut,

>
> Opera documente son impl�mentation de z-index sur
> http://dev.opera.com/articles/view/37-css-absolute-and-fixed-positioning/#zindex
> mais ne dit pas implicitement faire � tout comme Gecko ou Webkit � :-D

Moi ce que je retiens c'est :
� When two elements in the same stacking context have the same stack
level, the one that occurs later in the source code will appear on top
of its preceding siblings. �

Maintenant, avec :

<h1>blabla</h1>
<div style="height:300px">remplissage</div>
<p><a href="1.htm"
style="position:absolute;width:100%;height:100%;top:0">test</a></p>

vu dans Opera 9.6
les textes sont comme s'ils avaient un z-index bien sup�rieur � leur
conteneurs
(ils �chappent au lien recouvrant)

Ph�nom�ne n'apparaissant pas avec Firefox.

Pour Opera il semble qu'il lui faille en plus un background
(un vrai faux fond lui suffisant) :

<h1>blabla</h1>
<div style="height:300px">remplissage</div>
<p><a href="1.htm"
style="position:absolute;width:100%;height:100%;top:0;background:url()">test</a></p>

--
sm

Olivier Miakinen

unread,
Dec 21, 2009, 11:53:35 AM12/21/09
to
Le 21/12/2009 13:24, SAM a ï¿œcrit :

>
> Moi ce que je retiens c'est :
> ᅵ When two elements in the same stacking context have the same stack
> level, the one that occurs later in the source code will appear on top
> of its preceding siblings. ᅵ

>
> Maintenant, avec :
>
> <h1>blabla</h1>
> <div style="height:300px">remplissage</div>
> <p><a href="1.htm"
> style="position:absolute;width:100%;height:100%;top:0">test</a></p>
>
> vu dans Opera 9.6
> les textes sont comme s'ils avaient un z-index bien supᅵrieur ᅵ leur
> conteneurs
> (ils ï¿œchappent au lien recouvrant)

Je dirais plutï¿œt que la portï¿œe du <a> dans le cas d'un ï¿œlï¿œment inline
est ᅵtendue diffᅵremment ᅵ sa boᅵte de bloc gᅵnᅵrᅵe dans Opera et dans
Firefox, avec un background transparent...

Voir par exemple ici :

<h1>blabla</h1>
<div style="height:300px">remplissage</div>
<p><a href="1.htm"

style="position:absolute;width:100%;height:100%;top:0;">test<br>
test<br>
test<br>
test<br>
test<br>
test<br>
test<br>
test</a></p>

Le texte dans le lien recouvre bien tout texte placᅵ avant, et il est
cliquable. Mais il se trouve que dans Opera un background transparent
laisse passer non seulement les pixels mais aussi l'ï¿œtat cliquable ou
non de ce qui est derriï¿œre. Cela dit, ce comportement est (au moins
partiellement) indï¿œpendant du z-index.

> Phï¿œnomï¿œne n'apparaissant pas avec Firefox.


>
> Pour Opera il semble qu'il lui faille en plus un background
> (un vrai faux fond lui suffisant) :
>
> <h1>blabla</h1>
> <div style="height:300px">remplissage</div>
> <p><a href="1.htm"
> style="position:absolute;width:100%;height:100%;top:0;background:url()">test</a></p>

C'est effectivement troublant de voir un comportement diffï¿œrent avec
ᅵ background-color:transparent ᅵ d'avec un background ne s'ᅵtendant
pas sur la totalitᅵ de l'ᅵlᅵment, mais bon, si c'est un bug, je ne crois
pas qu'on puisse l'imputer au z-index.

0 new messages