Partage
  • Partager sur Facebook
  • Partager sur Twitter

Combiner blocs fixes et blocs variables

Page d'accueil

Sujet résolu
    23 juin 2017 à 0:58:37

    Bonjour tout le monde,

    Pour mettre en pratique mes compétences théoriques de HTML et CSS ...etc j'ai décidé de créer le site internet de l'univers de fantasy qu'on est en train de créer avec des potes. Je suis en train de créer la page d'accueil et je me heurte déjà à un problème (ou plusieurs en réalité).

    Mon code se décompose pour le moment en 3 parties: une balise <header> une balise <nav> et une balise <footer>. Étant donné qu'il ne s'agît que d'une page redirigeant vers le reste des autres catégories je ne pense pas qu'il faille plus de balises.

    Mon <header> contient pour le moment juste le titre et un lien vers la page qui permettra de s'inscrire/se connecter et qui sera remplacé par l'image de profil et le pseudo quand un utilisateur sera connecté. À terme, le header contiendra aussi le chemin des pages sur lesquelles l'utilisateur se sera rendu pour rendre la navigation plus simple.

    Le <footer> contient pour le moment juste deux lien vers le compte twitter et la chaîne youtube mais devrait à terme également contenir un formulaire de contact ou autre...enfin on verra bien.

    Le <nav> contient le plus important de la page: un tableau avec 5 liens menant vers les différentes parties du site.

    Le petit souci que j'ai c'est que je souhaiterais faire en sorte de garder le header et le footer à la même taille mais que le nav prenne toute la taille qui reste sans créer un scrolling à moins que le nav ne passe en dessous de 500px de hauteur.

    nav
    {
    	height: 60%;
    	min-height: 300px;
    	background: url(Images/MNLogo.jpg) no-repeat center scroll;
    }

    De plus, j'aimerais faire en sorte que le tableau se redimensionne dynamiquement pour prendre le 100% de la hauteur du nav

    table
    { 
    	margin: auto;
    	width: 50%;
    	height: 100%;
    }

    Le souci c'est que le résultat ressemble plutôt à ça

    Résultat

    Le problème est donc:

    -Le nav ne se redimensionne pas et semble prendre la valeur min-height comme valeur fixe

    -Le tableau ne se redimensionne pas pour remplir l'espace du nav

    -Même s'il se redimensionne, le pourcentage ne permettrait pas d'obtenir un résultat propre peut importe la hauteur de l'écran: il y a toujours du scrolling ou une surface vide en dessous du footer si la hauteur ne correspond pas exactement à la hauteur pour laquelle la page était conçue

    Quelqu'un pourrait m'aider à résoudre au moins un de ces problèmes ?

    • Partager sur Facebook
    • Partager sur Twitter
      23 juin 2017 à 2:16:33

      Salut,

      Il te serrait possible de coller ton code et ton style ?

      • Partager sur Facebook
      • Partager sur Twitter

      Compos sui.

        23 juin 2017 à 21:42:42

        Voilà comme demandé

        <!DOCTYPE HTML>
        <html>
        	<head>
        		<meta charset="UTF-8"/>
        		<link rel="stylesheet" type="text/css" href="MNStyle.css"/>
        		<title>
        			Moutons Noirs, Site Officiel
        		</title>
        	</head>
        	<body>
        		<header>
        			<h1>
        				MOUTONS NOIRS
        			</h1>
        			<h2>
        				Site Officiel
        			</h2>
        			<div id="LogProf">
        				<a href="MNLogin.html">
        					Inscription/Connexion
        				</a>
        			</div>
        		</header>
        		<nav>
        			<table>
        				<tr>
        					<td>
        						<a href= "MNUniverse.html" title="Découvrez la contrée d'Helvios" id="Uni" class="category">
        							UNIVERS
        						</a>
        					</td>
        					<td>
        						<a href= "MNCharacters.html" title="Rencontrez les personnages" id="Char" class="category">
        							PERSONNAGES
        						</a>
        					</td>
        				</tr>
        				<tr>
        					<td>
        						<a href= "MNForum.html" title="Venez discuter de l'univers...ou autre" id="For" class="category">
        							FORUM
        						</a>
        					</td>
        					<td>
        						<a href= "MNGames.html" title="Amusez vous avec les Moutons Noirs" id="Gam" class="category">
        						JEUX
        						</a>
        					</td>
        				</tr>
        				<tr>
        					<td colspan=3>
        						<a href= "MNVideos" title="Regardez les aventures d'Helvios" id="Vid" class="category">
        						VIDEOS
        						</a>
        					</td>
        				</tr>
        			</table>
        			
        			
        			
        			
        			
        		</nav>
        		<footer>
        		<p>
        			Vous pouvez nous retrouver sur:
        		</p>
        			<ul>
        				<li>
        					<a href="https://twitter.com/LesMoutonsNoirs" title="@LesMoutonsNoirs">
        						Twitter
        						<img src="Images/TwitterIcon.png" alt="Chip...erreur...chip" height="30px" width="30px"/>
        					</a>
        				</li><br/>
        				<li>
        					<a href="" title="Les Moutons Noirs">
        						Youtube
        						<img src="Images/YoutubeIcon.png" alt="Erreur de connexion" height="30px" width="30px"/>
        					</a>
        					
        				</li>
        			</ul>
        		</footer>
        	</body>
        </html>

        et le code CSS

        body
        {
        	background: url(Images/WoodTexture.jpg) repeat top left scroll;
        	font-family: EnchantedLand, sans-serif;
        	margin: 0px;
        	letter-spacing: 4px;
        }
        header
        {
        	padding: 25px;
        	background: black;
        	height: 150px;
        }
        nav
        {
        	height: 60%;
        	min-height: 500px;
        	background: url(Images/MNLogo.jpg) no-repeat center scroll;
        }
        
        .category
        {
        	display: block;
        	width: 250px;
        	height: 40px;
        	background: #49281f;
        	text-align: center;
        	border: 5px inset #bcc6cc;
        	font-weight: bold;
        	font-size: 30px;
        	color: black;
        	margin:auto;
        	opacity: 0.9;
        }
        .category:hover
        {
        	background: #8f4f3d;
        	opacity: 1;
        }
        footer
        {
        	height: 150px;
        	background: #4d9900;
        	padding: 10px 25px 10px 25px;
        }
        
        #LogProf
        {
        	background: #ffffff;
        	width: 180px;
        	padding: 25px 10px 25px 10px; 
        	position: absolute;
        	top: 60px;
        	right: 50px;
        }
        h1
        {
        	font-size: 50px;
        	top: 5%;
        	margin:auto;
        	text-align: center;
        	background: white;
        	width: 450px;
        	padding: 5px;
        }
        h2
        {
        	background: white;
        	width: 150px;
        	padding: 5px 25px 5px 25px;
          margin: auto;
        	margin-top: 30px;
        	text-align: center;
        }
        a
        {
        	text-decoration: none;
        }
        @font-face
        {
        	font-family: 'EnchantedLand';
        	src: url('Fonts/EnchantedLand.otf');
        }
        table
        { 
        	margin: auto;
        	width: 50%;
        	height: 100%;
        	padding-top: 20px;
        }
        td
        {
        	margin: auto;
        	text-align: center;
        }


        -
        Edité par Anthony Jaccard 23 juin 2017 à 21:44:33

        • Partager sur Facebook
        • Partager sur Twitter
          2 juillet 2017 à 11:46:48

          Bon j'ai réussi à faire en sorte que mon tableau soit toujours centré moyennant le sacrifice de quelques valeurs en pourcents et en suivant les conseils de cette page: http://phrogz.net/CSS/vertical-align/index.html (en anglais). On perd un peu en "malléabilité" de la page mais le résultat final correspond à peut près à ce que je voulais.

          Maintenant il ne me reste plus qu'un problème: faire en sorte qu'il n'y aie pas de vide sous le footer:

          Comme vous pouvez le voir, il reste un espace sous le footer que j'aimerais pouvoir combler en mettant comme règle que le footer doit toujours rester tout en bas et que le nav se redimensionne pour remplir l'espace entre le Header et le Footer

          Quelqu'un pourrait m'aider ?

          • Partager sur Facebook
          • Partager sur Twitter
            3 juillet 2017 à 13:23:01

            Bon j'ai décidé de prendre une autre approche à mon problème: je vais tenter de trouver qqun sur le forum "recrutement" qui pourrait m'aider de manière régulière avec les problèmes que je pourrais rencontrer durant le développement de mon site.

            Première fois que je suis déçu de ce forum et de l'aide que j'ai pu obtenir

            • Partager sur Facebook
            • Partager sur Twitter
              4 juillet 2017 à 18:30:12

              Ce serait peut être mieux, mais comprend aussi que cette période n'est peut être pas non plus la plus tranquille pour certains d'entre nous, pour ma part en ce moment je n'ai absolument pas le temps de me pencher sur ton problème, cherchant moi même à bouclé le maximum de choses avant les vacances, j'avais espéré qu'en posant ton code quelqu'un y aurais répondu, mais à mon avis nombreux sont ceux qui sont dans mon cas.

              Maintenant je vais te donner un bout de soluce, le prob viens de là

                 font-family: EnchantedLand, sans-serif;
              
                 letter-spacing: 4px;


              Ca pousse firefox  à créer un span de grilles responsive, tu le vois si tu examine le code attentivement dans le navigateur.

              Et pour limiter la casse sous safari un petit

              html{
              
              height: 100%;
              
              }



              -
              Edité par exen 4 juillet 2017 à 19:06:47

              • Partager sur Facebook
              • Partager sur Twitter

              Compos sui.

              Combiner blocs fixes et blocs variables

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown