Bonjour à tous,

D'avance merci aux bonnes âmes qui sauront ou qui essaieront de me guider vers le bout du tunnel
Il faut dire que je ne maitrise pas encore toutes les subtilités du css alors qu'on m'en demande parfois beaucoup

Voici donc l'exposé de mon problème à l'heure ou je vous parle.

Je reprend le site d'un collègue qui date déjà un peu beaucoup. Le dit site consiste en une page principale contenant une entête, un menu de navigation à gauche et d'un cadre principal. J'ai repris l'ensemble de la page originale pour la transformer en une page xhtml strict couplée à une belle feuille css. J'ai ainsi pu séparer le contenu de la mise en forme. J'en ai profité pour supprimer ces affreuses balises iframe par de jolis div.

Le contenu principal se retrouve donc dans une balise div et se trouve appelé plus précisément par une balise object en lieu et place d'une ancienne balise iframe. Il faut dire que le contenu du site est généré par un outil externe sur lequel je n'ai pas la main. Je récupère donc ce dernier sous la forme d'un ensemble de fichiers html tout simplement. L'idée (bien que ce soit plus une contrainte) est donc d'afficher le contenu du site dans un object.

Mon problème concerne justement cette balise object et son intégration dans le reste de la page. Je pense que mon problème sera probablement anodin pour vous donc avis aux amateurs. Je suis preneur de tout conseil avisé concernant les soucis suivants :

1) Le div contenant le cadre principal a une largeur fixe (pour ne pas dénaturer la mise en page) mais une hauteur non imposée. Les pages html à afficher dans ce cadre sont moins larges donc pas de souci en largeur mais avec une longueur variable. Mon premier problème est que j'ai l'impression que mon cadre a tout de même une hauteur fixe... En effet si la page à afficher via la balise object est vraiment longue, un ascenseur vertical apparait alors que ce n'est pas le but. L'objectif est que l'objet s'affiche sans contrainte en hauteur. A aucun moment je n'impose une hauteur dans ma feuille de style. Je ne comprend donc pas.

Le xhtml principal où apparait la balise object :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
[...]
<div id="menu">
	<div class="element_menu">
		<h3>Processus</h3>
		<ul>
			<li><a href="diagram3f.htm">Process 1</a></li>
                        <li><a href="diagram4f.htm">Process 2</a></li>
                        [...]			 
                </ul>
	</div>
</div>
<div id="corps">
	<object data="diagram3f.htm" type="text/html" class="element_corps">  
</div>
[...]
Mon code css pour la balise object et le cadre principale (conteneur) :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 
body
{
   width: 1024px;
   margin: auto;
   margin-top: 20px;
   margin-bottom: 20px;    
}
[...]
#corps
{
   margin-left: 220px;
   margin-bottom: 20px;
   padding: 5px;
   color: #B3B3B3;
   background-color: #FFFFFF;
   border: 4px solid #9acd32;
}
 
.element_corps
{
    height: 100%;
    width: 100%;
}
[...]
2) Dans mon menu de navigation j'aimerais placer des liens pour pouvoir appeler la page avec le bon contenu dans la balise object. Le but est de remplacer les anciens paramètres target des balises de lien qui étaient couplés avec la balise iframe.

La navigation entre les pages dans le cadre principal se fait sans problème mais pas via les liens mis en place. Si j'utilise ces derniers sans target, la contenu s'affiche bien mais sans la mise en page (forcément on contourne dans ce cas la page principale et la balise objetc).

Je ne vois pas comment faire sans target...

Dur dur la transition vers css.
Merci d'avance aux bonnes âmes donc.