28173 sujets

CSS et mise en forme, CSS3

Bonjour,

Je me lance dans la création de sites Internet. Je me suis mis au PHP et au CSS.
J'ai réussi à faire un site valide XHTML, cependant je n'arrive pas à positionner correctement ma div qui contient le texte de mon site, en page centrale !

La div est trop bas, je ne sais pas pourquoi ?

Ci-joint une capture d'écran :

upload/11286-Capture.png

Vous voyez, l'icône ainsi que le texte sont trop bas !!

CSS

body {
margin : 0;
text-align : center;
}
#container {
position : relative;
margin-left : auto;
margin-right : auto;
width : 570px;
height : 100%;
top : 0;
text-align : justify;
}
#design {
position : relative;
background-image : url(../site/default_BG.gif);
background-repeat : no-repeat;
width : 570px;
height : 720px;
}
#menu {
position : relative;
width : 150px;
height : 180px;
left : 2%;
top : 500px;
font-family : Tahoma, Arial, Helvetica, sans-serif;
font-size : 12px;
color : #ffffff;
}
#menu a, a:link, a:active, a:visited {
color : #ff6600;
}
#menu a:hover {
color : #ffffff;
}
#menu_small {
position : relative;
font-family : Tahoma, Arial, Helvetica, sans-serif;
font-size : 11px;
color : #ffffff;
}
#menu_small a, a:link, a:active, a:visited {
color : #ff6600;
}
#menu_small a:hover {
font-weight : bold;
font-style : italic;
}
#footer {
position : relative;
width : 370px;
height : 12px;
background : #042558;
left : 35%;
bottom : 1px;
color : #ffffff;
font-family : Verdana, Arial, Helvetica, sans-serif;
font-weight : bold;
font-style : italic;
font-size : 10px;
}
#content {
position : relative;
width : 375px;
height : 600px;
left : 20%;
overflow : auto;
}
#content_2 {
position : relative;
width : 370px;
left : 35%;
overflow : hidden;
}
.Textes {
font-family : Verdana, Arial, Helvetica, sans-serif;
font-size : 12px;
color : #000000;
}
#titles {
font-family : Verdana, Arial, Helvetica, sans-serif;
font-weight : bold;
font-size : 13px;
color : #000000;
}
#subtitles {
font-family : Verdana, Arial, Helvetica, sans-serif;
font-style : italic;
font-size : 10px;
color : #000000;
}
#content_links a, a:link, a:active, a:visited {
color : #ff6600;
}
#content_links a:hover {
color : #000000;
}
#board {
border : 1px dashed #000000;
}
#rouge {
color : #ff0000;
font-style : italic;
}
a img {
border : none;
}


XHTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1" http-equiv="content-type" /><meta name="author" content="Uxone.net" />
<meta name="description" content="Uxone - Web Development" />
<meta name="keywords" lang="fr" content="Uxone,Web,Creation,Development,PHP" />
<meta http-equiv="Content-Language" content="fr" />
<meta name="copyright" content="&copy;2007 - Une r&eacute;alisation Uxone.net" /><link rel="stylesheet" type="text/css" media="screen" href="graphics/css/default.css" /><title>Uxone - Web Development</title></head><body>
<div id="container">
  <div id="design">
    <div id="menu" align="left">
      - <a href="index.php?page=index">Accueil</a><br />

      - <a href="index.php?page=webdev">Web Development</a><br />
      - <a href="index.php?page=webdesign">Web Design</a><br />
      - <a href="index.php?page=references">Nos r&eacute;f&eacute;rences</a><br />
      - <a href="index.php?page=contact">Contact</a><br />

      - <a href="index.php?page=about">A Propos</a><br /><br />
      
	    <form method="post" action="/uxone.net/index.php">
		  <fieldset>
			<legend>Choisissez un Style</legend>
			<select name="style">
				<option value="default" selected="selected">Style par d&eacute;faut</option>

				<option value="nb">Noir et Blanc</option>
				<option value="rouge">Rouge</option>
				<option value="vert">Vert</option>
			</select>
			<br /><br />
			<input type="submit" name="change_style" value="Changer le Style" />
		  </fieldset>

	    </form>
	    <br />
	    <br />
	    <br />
      <a href="http://validator.w3.org/check/referer"><img src="graphics/site/xhtml.png" alt="XHTML Valid" /></a>
      <br />
      <a href="http://jigsaw.w3.org/css-validator/"><img src="graphics/site/css.png" alt="CSS Valid" /></a>
      <br />
      <img src="graphics/site/logo.jpg" alt="Logo UXONE" />

      <br />
    </div><div id="content_2"><center><img src="graphics/site/accueil.jpg" alt="Accueil"></img></center><br />
<center><span id="titles"><strong>Cr&eacute;ation de sites Internet</strong></span></center><br />
<span class="Textes"><br />
Uxone est une Web Agency (Agence Web) sp&eacute;cialis&eacute;e dans la cr&eacute;ation de sites Internet.<br />
<br />
Nous vous proposons des solutions adapt&eacute;es pour :<br />

<br />
.la r&eacute;alisation de votre site Internet : site vitrine, site dynamique ou de vente en ligne<br />
.le r&eacute;f&eacute;rencement de site Internet : conseil en visibilit&eacute;<br />
.la conception d'outils pour votre entreprise : intranet, extranet<br />
<br />
Quel que soit votre projet, Uxone vous guide pour le concr&eacute;tiser. De l'analyse &agrave; la conception, en passant par sa r&eacute;alisation et jusqu'&agrave; son suivi dans le temps, nous vous accompagnerons tout au long des &eacute;tapes de votre projet.<br />

A l'aise sur des sites &agrave; petit budget, comme sur des projets plus cons&eacute;quents, nous adaptons notre offre pour chaque client.<br />
<br />
Au f&ucirc;r et &agrave; mesure de nos r&eacute;alisations, nous avons d&eacute;velopp&eacute; et perfectionn&eacute; notre offre.<br />

Nous sommes aujourd'hui en mesure de vous proposer l'outil dont vous avez besoin. Ni plus ni moins.<br />
<br />
Nous sommes une &eacute;quipe jeune et motiv&eacute;e dot&eacute;e de comp&eacute;tences compl&eacute;mentaires.<br />
<br />
Tous les sites web que nous d&eacute;veloppons respectent les standards du Web, selon les normes du W3C (World Wide Web Consortium).<br />
<br />
Votre site est ainsi ergonomique, fluide, et dot&eacute; des derni&egrave;res technologies en mati&egrave;re de d&eacute;veloppement web.<br />

<br />
Nos comp&eacute;tences<br />
<br />
.Ing&eacute;nierie logicielle Web, d&eacute;veloppement<br />
.Sites Internet / Extranet / Intranet<br />
.Plates-formes de e-commerce<br />
.R&eacute;f&eacute;rencement, h&eacute;bergement<br />

<br />
Uxone prend en charge tout le processus de cr&eacute;ation graphique de votre site Web :<br />
<br />
.Cr&eacute;ation de logo<br />
.Cr&eacute;ation de votre identit&eacute; visuelle<br />
.Cr&eacute;ation de la charte graphique<br />
</span><br />

</div><div id="footer"><center>&copy; 2007 - UXONE</center></div>
</div>
</div>
</body>
</html>


J'ai le même problème sur une autre page, cette fois-ci c'est le formulaire qui se trouve trop bas....

upload/11286-Capture-1.png

Code XHTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1" http-equiv="content-type" /><meta name="author" content="Uxone.net" />
<meta name="description" content="Uxone - Web Development" />
<meta name="keywords" lang="fr" content="Uxone,Web,Creation,Development,PHP" />
<meta http-equiv="Content-Language" content="fr" />
<meta name="copyright" content="&copy;2007 - Une r&eacute;alisation Uxone.net" /><link rel="stylesheet" type="text/css" media="screen" href="graphics/css/default.css" /><title>Uxone - Web Development</title></head><body>
<div id="container">
  <div id="design">
    <div id="menu" align="left">
      - <a href="index.php?page=index">Accueil</a><br />

      - <a href="index.php?page=webdev">Web Development</a><br />
      - <a href="index.php?page=webdesign">Web Design</a><br />
      - <a href="index.php?page=references">Nos r&eacute;f&eacute;rences</a><br />
      - <a href="index.php?page=contact">Contact</a><br />

      - <a href="index.php?page=about">A Propos</a><br /><br />
      
	    <form method="post" action="/uxone.net/index.php">
		  <fieldset>
			<legend>Choisissez un Style</legend>
			<select name="style">
				<option value="default" selected="selected">Style par d&eacute;faut</option>

				<option value="nb">Noir et Blanc</option>
				<option value="rouge">Rouge</option>
				<option value="vert">Vert</option>
			</select>
			<br /><br />
			<input type="submit" name="change_style" value="Changer le Style" />
		  </fieldset>

	    </form>
	    <br />
	    <br />
	    <br />
      <a href="http://validator.w3.org/check/referer"><img src="graphics/site/xhtml.png" alt="XHTML Valid" /></a>
      <br />
      <a href="http://jigsaw.w3.org/css-validator/"><img src="graphics/site/css.png" alt="CSS Valid" /></a>
      <br />
      <img src="graphics/site/logo.jpg" alt="Logo UXONE" />

      <br />
    </div><div id="content_2"><script src="scripts/verif.js" type="text/javascript"></script><br />
<center><img src="graphics/site/mail.jpg" alt="Contact"></img></center><br />
<center><span id="titles"><strong>Contact</strong></span></center><br />
<span class="Textes"><br />
<form name="formulaire" method="post" action="index.php?page=send" OnSubmit="return testform(this.nom,this.mail,this.message)"><br />
<table><br />
<tr><br />
<td><span id="titles">Nom<span id="rouge">*</span> :</span></td><br />

<td><input type="text" name="nom"><br></td><br />
</tr><br />
<tr><br />
<td><span id="titles">Soci&eacute;t&eacute; :</span></td><br />
<td><input type="text" name="societe"><br></td><br />
</tr><br />
<tr><br />
<td><span id="titles">Email<span id="rouge">*</span> :</span></td><br />
<td><input type="text" name="mail"><br></td><br />

</tr><br />
<td><span id="titles">T&eacute;l&eacute;phone :</span></td><br />
<td><input type="text" name="numerotel"><br><br></td><br />
</tr><br />
<tr><br />
<td><span id="titles">Message<span id="rouge">*</span> :</span></td><br />
<td><textarea name="message" cols="30" rows="5"></textarea><br><br></td><br />
</tr><br />
<tr><br />

<td><input type="submit" name="Submit" value="Envoyer"></td><br />
<td><input type="reset" name="Submit2" value="R&eacute;initialiser"></td><br />
<tr><br />
</table>        <br />
      <p><span id="rouge">*</span><span id="titles"> Champs obligatoires</span></p><br />
    </form><br />
</span><br />
</div><div id="footer"><center>&copy; 2007 - UXONE</center></div>
</div>

</div>
</body>
</html>


Merci d'avance pour votre aide si précieuse !!!
Modifié par webdev (10 Mar 2007 - 18:41)
salut,

Farfelu... effectivement ça prête à confusion, dans ma Provence profonde c'est plutôt gentillet, bon pour moi, tu as trop de blocs qui font double usage et surtout trop de <br /> dont tu pourrais te passer, ensuite tu ré-inventes tes balises hr par des <span class="titre"> et les balises p par <span class="texte">.
De plus si ta mise en page en reste là, tes pages sont assez étroites (570px) sauf raisons particulières tu pourrais pousser jusqu'à 760px pour une ésolution minimum de 800px.
Tu as aussi beaucoup de blocs en position relative, pouquoi?
...
Je te suggère de jeter un oeil sur les tutos d'Alsacreations, juste pour te faire une idée, car plus on fait simple moins on a de chance de se planter.

Tout ça dit avec le sourire et sans autre but que t'apporter ma modeste contribution.
Et, puisque l'on parle d'apprentissage : apprendre à utiliser les éléments suivants :
- les listes (ordonnées, non ordonnées : éléments ol et ul) ;
- les titres de section (éléments h1, h2, h3...) ;
- l'élément p pour mettre en forme les paragraphes (pratique plus souple et donnant plus de libertés de mise en page qu'un flot de texte séparé par des doubles <br />).

Pour rappel, un élément HTML est composé d'une balise ouvrante, d'une balise fermante, et du contenu compris entre ces deux balises, à l'exception de quelques éléments « vides » qui n'ont qu'une balise (br, img, input, etc.). Lors que je parle de l'élément p, cela peut prendre la forme concrète suivante :
<p>Ceci est un premier paragraphe.</p>
<p>Suivi d'un second paragraphe.</p>

Bonne journée et bonne continuation. Smiley smile
Modifié par Florent V. (10 Mar 2007 - 15:21)
ghost a écrit :
tu ré-inventes tes balises hr par des <span class="titre"> et les balises p par <span class="texte">

Je suppose que tu pensais à des éléments hN (c'est à dire h1, h2, ..., h6) pour remplacer les <span class="titre">.

Pour préciser les commentaires faits par moi-même et par ghost sur une utilisation un peu plus large du panel des éléments HTML de base pour la structuration du texte : ce n'est pas une priorité absolue. L'utilisation des paragraphes et des listes, par exemple, est un gain qualitatif sympathique mais pas « absolument nécessaire ». Une utilisation cohérente des titres de section, par contre, permet de structurer le document et est particulièrement importante pour l'accessibilité.

S'il doit y avoir une priorité, commencer par travailler les titres de section. Mais utiliser des p, des ul et des li n'est pas bien compliqué non plus (c'est même plus simple, car cela demande moins de réflexion que les titres -- pour lesquels il faut choisir à chaque fois, autant que possible, un niveau de titre qui fait sens).
Re,

Oui mon doigt ou mon neurone a fourché, c'était bien hN qu'il fallait lire !!
merci de ta correction
Bonjour,

Tout d'abord merci pour vos réponses nombreuses !!!
J'ai utilisé cette méthode
position : relative
car je souhaitais centrer le site.

Je vais faire les modifs préconisées, et je vous tiens au jus.
webdev a écrit :
J'ai utilisé cette méthode
position : relative
car je souhaitais centrer le site.

On ne centre pas un site avec le positionnement relatif. À la rigueur avec le positionnement absolu, mais l'idéal est d'utiliser la technique des marges automatiques. Elle est expliquée dans les deux articles suivants :

Un article de Laurent Denis sur Openweb :
Initiation au centrage CSS (article complet avec juste ce qu'il faut)
Et Raphaël Goetter sur Alsacréations :
Centrer les éléments ou un site web en CSS