28172 sujets

CSS et mise en forme, CSS3

Bonsoir à tous.
Je suis nouveau sur ce forum et ceux car j'ai un problème lié au CSS.
Voici l'apparence du site :
http://image.noelshack.com/fichiers/2014/46/1415995769-site.png
Je vous illustre ce que je veux faire :
-Je souhaiterais mettre le header bleu en position fixe mais lorsque je lui attribut : {position:fxed} , le texte à l'intérieur remonte...
-Je souhaiterais aussi mettre le cadre gris et le footer centré.

Voici mon code HTML :
http://image.noelshack.com/fichiers/2014/46/1415995929-html.png

Voici mon code CSS :
http://image.noelshack.com/fichiers/2014/46/1415995935-css.png

Merci d'avance aux personnes qui m'aideront.

PS : Bien évidemment avant d'écrire ce post, j'ai cherché sur le net et les solutions que j'ai trouvé n'ont pas fonctionné...
Salut Blafikox,

Ce serait mieux si tu nous donnais une url de test plutôt que des images, on pourrait trouver une solution plus rapidement ^^, tu peux aussi utiliser CodePen.

Pour ton problème je pense qu'il faut regarder au niveau des styles par défaut de ton navigateur qui - il me semble - ne sont pas surchargés, peut-être le margin de ton ul. Tu peux le corriger en rajoutant un margin: 0; sur ton sélecteur #liste (ul).
Comme je n'ai pas accès au code, je n'ai pas testé cette solution.

Bye
Merci pour ton aide. Etant donné que je n'avais pas eu de réponse, j'ai opté pour un autre design que j'aime bien, seulement maintenant mon soucis c'est que chaque résolution d'écran ne voit pas comme celle que j'ai.
Je suis en 1920x1080 et en faisant le test de baisser ma résolution, des scrolls apparaissent alors que je ne veux pas. Smiley ohwell
Pourriez-vous m'aider ?
Voici mon code : http://codepen.io/anon/pen/zxYVwv

Encore merci pour votre aide qui m'est d'une grande utilité.
Re,

C'est normal : tu as des width:1920px un peu partout (dans ton #conteneur, ta #liste, ...). Je n'ai pas tout regardé mais j'ai aussi vu un padding-left de plus de 1800px.

Ton code doit être plus flexible : ces width sont inutiles (vu que tu les places sur des éléments block) et tu peux utiliser un text-align right au lieu d'un padding left Smiley smile .

Bonne journée
salut,
il faudrait commencer à faire du responsive design.
Mais pour faire plus vite commence par changer les width en max-width sur ton #conteneur, ta #liste, .... pour supprimer les scrolls en basse resolution.
Bonjour,

integrateur75 a écrit :
commence par changer les width en max-width


et j’ajouterais de coder en pourcentage plutôt qu'en pixel.

Bonne journée,
Excusez moi, je n'ai plus trop le temps en ce moment, j'essaierais toutes vos suggestions quand j'aurais le temps, merci à tous Smiley smile
Bonjour, ayant essayer vos suggestions, je n'ai toujours pas réussi. Cependant je part sur un nouveau design que je réussi beaucoup plus. Je cherche à faire un site de streaming.
Ici, mon problème est le suivant :
J'aimerais centrer la div contenu et la sidebar qui est en contact avec la div contenu.
J'aimerais les centré pour que toutes les résolutions d'écran les voit, c'est-à-dire qu'un margin ne résout pas l'affaire.

Voici mon code HTML :

<!doctype html>
<html lang="fr">
<head>
<meta charset="utf-8">
<title>FamilyStream</title>
<link href="style.css" rel="stylesheet" type="text/css">
</head>

<body>

<!-- début header -->

	<div id="header">
    	<div id="logo"><a href="#"><img src="images/logo.png"></a></div>
    		<ul>
            	<li><a href="">Accueil</a> |</li>
                <li><a href="">Streameurs</a> |</li>
                <li><a href="">Aide</a> |</li>
                <li><a href="">Nous Contacter</a></li>
            </ul>
	</div>
<!-- fin header -->

<!-- début contenu -->
	<section id="contenu">
    	<article>
        <h1><span class="orange">B</span>lafikox</h1>
        	<iframe src="http://www.twitch.tv/blafikox/embed" frameborder="0" scrolling="no" height="378" width="620"></iframe><a href="http://www.twitch.tv/blafikox?tt_medium=live_embed&tt_content=text_link" style="padding:2px 0px 4px; display:block; width:345px; font-weight:normal; font-size:10px;text-decoration:underline;"></a>
    	</article>
        
        <article>
        <h1><span class="orange">I</span>nformations</h1>
        	<p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo.</p>
    	</article>
    </section>
<!-- fin contenu -->

<!-- début aside -->
	<aside id="sidebar">
    	<section>
        	<h2><center><span class="orange">D</span>iscussion</center></h2>
            	<div id="tchat">
			<iframe src="http://www.twitch.tv/blafikox/chat?popout=" frameborder="0" scrolling="no" height="740" width="300"></iframe>
            	</div>
		</section>
	</aside>
<!-- fin aside -->

<!-- début footer -->
    <footer id="footer">
    	<p>Copyright - By Blafikox</p>
    </footer>
<!-- fin footer -->
</div>  
</body>
</html>


CSS :

@charset "utf-8";
/* CSS Document */
body 									{background-color: #E3E3E3; margin: 0; padding: 0; background:url(images/bg.jpg) no-repeat center fixed; -webkit-background-size: cover;        	-moz-background-size: cover; -o-background-size: cover;}
h1 										{color: #000000; margin: 0; padding: 0;}
p										{margin: 0; padding: 0; font-family: Gotham, "Helvetica Neue", Helvetica, Arial, sans-serif;}
/* Header */
ul 										{margin: 0; padding: 0;}
#header									{top: 0; right: 0; left: 0; height: 120px; position: fixed; line-height: 120px; background-color: #A0A0A0; text-align: center; font-size: 30px; border-bottom: #000000 solid 2px; font-family: Gotham, "Helvetica Neue", Helvetica, Arial, sans-serif;}
#header li 								{list-style-type: none; display: inline-block;}
#header li a 							{text-decoration: none; color: #222222; transition: color .5s; -webkit-transition: color .5s; -moz-transition: color .5s; -o-transition: color .5s;}
#header li a:hover						{color: #E8740E;}
#logo							        {width: 20%; height: 0px; text-align: center;}
/* Contenu */
#contenu 								{height: 790px; width: 625px; background-color: #C9C9C9; padding: 20px; padding-top: 140px; float: left; border-left: #000000 solid 2px; font-family: Gotham, "Helvetica Neue", Helvetica, Arial, sans-serif;}
#contenu p 								{color: #222222; font-size: 13px; line-height: 18px; margin-bottom: 20px;}
#contenu p:first-letter 				{color: #E8740E; display:block; float: left; font-size: 34px; padding: 5px; line-height: 25px;}
#contenu h1								{margin-bottom: 20px; background:url(images/icon.png) no-repeat; height: 30px; padding-left: 30px; line-height: 30px; transition: all .5s; -webkit-transition: all .5s; -moz-transition: all .5s; -o-transition: all .5s;}	
#contenu h1:hover						{background:url(images/icon.png) 0 8px no-repeat;}		
/* Aside */
#sidebar 								{width: 300px; background-color: #BCBCBC; float: left; height: 790px; padding: 20px; padding-top: 140px; border-right: #000000 solid 2px; font-family: Gotham, "Helvetica Neue", Helvetica, Arial, sans-serif;}
#sidebar h2								{color: #000000; margin: 5px; padding: 0; font-size: 17px;}
#tchat									{padding-top: 7px;}
/* Footer */
#footer									{background-color: #A0A0A0; position: fixed; bottom: 0; left: 0; right: 0; height: 70px; text-align: center; color: #000000; font-size: 20px; line-height: 75px; border-top: #000000 solid 2px; font-family: Gotham, "Helvetica Neue", Helvetica, Arial, sans-serif;}
/* Couleur*/
.orange									{color: #E8740E;}


Merci d'avance aux personnes qui sauront m'aider Smiley smile
Salut,

J'ai un peu de mal à comprendre ce que tu veux faire, là comme ça. Est-ce que ceci t'aide, sachant qu'il te suffit de ne pas mettre la colonne que tu ne souhaites pas avoir ?

Tant que j'y suis :

* Pas de balise <center>, c'est obsolète depuis près de 15 ans
* Plutôt que d'utiliser des span avec une classe pour colorer ta première lettre, utilise la pseudo-classe "first-letter" : http://www.emmanuelbeziat.com/blog/principes-du-css-les-selecteurs-partie1-css2/#first-letter
* D'ailleurs, de manière générale, donne des noms de classe sémantiques. "orange" n'a de sens que dans ton design actuel, si tu décides de changer de couleur un jour, tu devras sois changer tes noms de classe partout dans ton site, soit accepter d'avoir une classe "orange" qui met une couleur bleue (par exemple). Un nom de classe comme "important", "alert", "success", "info", etc. a plus de sens à la lecture et à l'utilisation que "orange", "rouge", "vert", "bleu".

Bonne continuation. Smiley cligne

Greg_Lumiere a écrit :
et j’ajouterais de coder en pourcentage plutôt qu'en pixel.


On peut très bien s'en passer, dans une majorité de cas. Elles sont trop souvent utilisées à tort, même par des gens qui gèrent le CSS (en particulier width: 100%). En l'occurrence, vu sa demande, je ne pense pas qu'il ai besoin de ça. Smiley smile
Modifié par Manumanu (21 Dec 2014 - 19:40)
Manumanu a écrit :
Salut,

J'ai un peu de mal à comprendre ce que tu veux faire, là comme ça. Est-ce que ceci t'aide, sachant qu'il te suffit de ne pas mettre la colonne que tu ne souhaites pas avoir ? Smiley smile


Désolé je répond un peu en retard mais en essayant ce que tu fais, ça ne marche pas. Le soucis est que lorsque j'enlève le float: left a la div contenu, la sidebar se décroche et viens se placer en dessous.
De plus ce que tu m'a passé ne résout pas vraiment ma question, puisque ma question est :
J'aimerais centrer au milieu de l'écran (quel que soit la résolution), la div contenu et sidebar. Je veux que la div contenu et sidebar soit toujours accrocher tout en étant centrer.

Merci beaucoup pour ton aide.

PS : Au niveau des span et des balises center etc.. je changerais ça, merci de m'avoir fait la remarque, mais étant donné que c'est un "brouillon", je m'y retrouve Smiley smile
Explique-moi plus en détails ce que tu entends par "accroché tout en étant toujours centré" ? Pour moi, ce que tu décris, c'est exactement ça : http://codepen.io/Manumanu/pen/Imzxb
Les deux sidebar (ça marche avec une seule) sont accrochées au contenu, et le tout est toujours centré. Même si tu essaies de changer la largeur, même si tu changes la taille de la fenêtre.

Quant à enlever float: left;, hé bien... Pourquoi vouloir l'enlever ?
C'est pas tout à fait ce que je recherche.
En gros, prenons l'exemple que la div contenu et sidebar forme un seul bloc qui ne se décroche pas.
Moi je veux centrer ce bloc sans rajouter de sidebar à gauche. Je ne veux que une sidebar, et c'est celle qui existe déjà.

Tu comprends mieux ?

Merci beaucoup de t'occuper de mon cas Smiley smile
Je pense comprendre pourquoi sur ton design ça tiens et pas sur le miens.
Sur le tiens il y a la div page, or moi je n'ai pas ça et à partir du moment ou j'enlève le float:left à ma div contenu pour mettre un overflow:auto, la sidebar va automatiquement se mettre en dessous.
De plus sur ton design, les sidebar ne sont pas directement accroché au content or moi je veux qu'elle soit accroché.

Franchement je trouve vraiment pas, je démotive. Smiley decu
Adapte ton code pour avoir la même chose que sur l'exemple, tout simplement. S'il n'y a pas de div page, utilise ta div conteneur ?
Au besoin, montre ta page, simplement. Smiley cligne
Modifié par Manumanu (29 Dec 2014 - 06:15)