IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mise en page CSS Discussion :

float right sur une image et un texte


Sujet :

CSS

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2009
    Messages : 128
    Points : 46
    Points
    46
    Par défaut float right sur une image et un texte
    bonjour,
    sur :
    http://www.marclabro.com/index.php?o...=20&Itemid=214
    j'essaye de faire la même chose que sur :
    http://www.karya.fr/newsletters/114-newsletter-36.html

    mais je ne m'en sors pas avec les float right...

    j'ai fait un div float right de largeur 140px pour centrer l'image de 180x254 (vous pouvez la télécharger en cliquant droit sur celle du site karya) ramenée à une largeur de 120px et sous celle-ci centrer un "bouton" "download

    j'ai arbitrairement pris un horrible vert sur download et il prend toute la hauteur

    de plus mon texte entoure l'image et je souhaiterais qu'il reste à gauche.
    j'ai essayé un div float left pour le texte mais il est passé sous l'image :-(

    pouvez-vous m'aider ?

    le code doit être dans style en ligne car je ne maitrise pas encore dans joomla le moyen de créer mes classes (ici une classe pour la catégorie agenda)

    j'ai lancé firebug sur la page karya et il me semble que mes styles sont assez similaires mais il doit manquer quelque chose comme par exemple je n'ai pas encore de classe readmore pour le bouton... donc dans un premier temps un bouton vert fera l'affaire.

    merci d'avance

    mon code :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <div style="float: right; width: 140px; background: #FFFFFF; margin: 20px 0px 50px 50px;"><img style="border: 1px solid #a9a9a9; margin: 10px 10px 20px 0px; float: right; box-shadow: 4px 4px 8px #AAAAAA;" alt="li 36-small" src="images/lettres_info/li_36-small.jpg" width="120" />
    	<p style="background-color: green; width: 120px; font-family: arial; color: #000000; font-size: 14px; text-align: center; margin: 0px; padding: 0px;"><a href="images/mes_documents/pdf/wima_capacitors.pdf">Download</a>
    	</p>
    </div>
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam bibendum posuere odio porttitor porta. Aliquam non mauris non massa consequat vehicula in ac turpis. Aliquam euismod vulputate magna, in dapibus odio sollicitudin non. Maecenas porta mauris augue. Quisque volutpat risus ut elit bibendum eget sodales dui semper. Proin vel enim ligula. Suspendisse vitae erat vestibulum nisi pulvinar tempus eget nec mi. Aliquam cursus, arcu a varius elementum, turpis nibh pretium sapien, vitae vehicula nisl lectus imperdiet diam. Morbi orci sapien, elementum vitae egestas et, mollis facilisis ipsum. Sed lacinia aliquet libero, ut vulputate est adipiscing quis. Aliquam auctor nisl vel lectus consequat adipiscing. Nullam nec arcu lorem.</p>
    <p>Nunc a risus eget risus interdum mattis ac in ligula. Quisque arcu odio, tempus in consequat eu, varius et dui. Ut ut nisi quam. Aliquam dignissim tortor sit amet magna scelerisque sed rhoncus nunc viverra. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Donec cursus dolor vitae magna sagittis a facilisis lorem auctor. Curabitur vitae quam ipsum, vel dignissim sapien.</p>
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam bibendum posuere odio porttitor porta. Aliquam non mauris non massa consequat vehicula in ac turpis. Aliquam euismod vulputate magna, in dapibus odio sollicitudin non. Maecenas porta mauris augue. Quisque volutpat risus ut elit bibendum eget sodales dui semper. Proin vel enim ligula. Suspendisse vitae erat vestibulum nisi pulvinar tempus eget nec mi. Aliquam cursus, arcu a varius elementum, turpis nibh pretium sapien, vitae vehicula nisl lectus imperdiet diam. Morbi orci sapien, elementum vitae egestas et, mollis facilisis ipsum. Sed lacinia aliquet libero, ut vulputate est adipiscing quis. Aliquam auctor nisl vel lectus consequat adipiscing. Nullam nec arcu lorem.</p>
    <p>Nunc a risus eget risus interdum mattis ac in ligula. Quisque arcu odio, tempus in consequat eu, varius et dui. Ut ut nisi quam. Aliquam dignissim tortor sit amet magna scelerisque sed rhoncus nunc viverra. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Donec cursus dolor vitae magna sagittis a facilisis lorem auctor. Curabitur vitae quam ipsum, vel dignissim sapien.</p>

  2. #2
    Expert confirmé
    Avatar de rodolphebrd
    Homme Profil pro
    Indépendant
    Inscrit en
    Novembre 2012
    Messages
    2 336
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Indépendant
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2 336
    Points : 5 443
    Points
    5 443
    Par défaut
    Avec la propriété display table vous avez un résultat correct:
    -en enlevant le float sur l'image
    -en changeant l'ordre des blocs
    Testé avec firebug...
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <div class="content clearfix">
    <ul>
    <li>Moving of a part of the Karnali house to Simikot.</li>
    <li>Bijae returns to his parents, in Humla.</li>
    <li>Press review - Actions in France.</li>
    <li>General assembly of Kar...he plateau des Glières.</li>
    </ul>
    <p>
    <img width="180" height="254" src="images/lettres_info/li_36-small.jpg" alt="li 36-small">
    </p>
    <div class="box-download width50">
    </div>
    Code css : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    .content.clearfix {
        display: table;
    }
    {
    .content.clearfix p img, .content.clearfix > ul {
        display: table-cell;
    }
    .box-download.width50 {
        display: table-row;
    }
    A vous de renommer pertinemment vos DIV et de donner une largeur plus grande à votre conteneur(content) non?
    Pensez à
    lire les règles du forum effectuer une recherche préalable
    utiliser la balise code (#) éditer votre code sur Codepen, Dabblet, Jsfiddle
    clore votre post avec le bouton

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2009
    Messages : 128
    Points : 46
    Points
    46
    Par défaut
    merci pour le code
    puis-je te demander de remplacer le code css par du code dans le html car je ne suis pas encore en mesure d'ajouter des classes,... à un thème joomla (ici yootheme micasa)

    je ne vois pas le bouton "download" avec son lien dans ton code

    note :
    tu as compris ce qui n'allait pas dans mon code ???

    merci beaucoup
    marc

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    155
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 155
    Points : 94
    Points
    94
    Par défaut
    dans le html, tu peux rajouter entre les balises <head> et </head>
    une ligne: <link rel="stylesheet" type="text/css" href="nomdefichier.css">

    ou tu mets directement le code entre un <style> et un </style>

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2009
    Messages : 128
    Points : 46
    Points
    46
    Par défaut
    merci mais je sais cela.
    j'utilise des classes, des fichiers css dans dreamweaver...

    mais ici je démarre en joomla et j'ai un éditeur jce qui a une icone html pour entrer du code html pour le contenu de l'article.
    cela m'arrangerait donc d'avoir le code sur les mêmes lignes que les p, les div,...
    je peux aussi faire appel à des classes mais je n'ai pas encore bien compris dans quel css aller les écrire et comment préciser que cette classe sera utilisée par les article du type agenda qui auront le texte à gauche et l'image à droite avec le bouton download en dessous

    donc commençons par le début :
    obtenir le même résultat que sur :
    http://www.karya.fr/newsletters/114-newsletter-36.html
    avec du "code en ligne"

    franchement quand je regarde le code firebug et les classes cela a l'air tout con mais je n'y arrive pas :-(

    merci
    marc

  6. #6
    Membre émérite
    Avatar de Candygirl
    Femme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 912
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 51
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 912
    Points : 2 907
    Points
    2 907
    Par défaut
    Hello,

    Tout d'abord pour ton bouton, ton problème vient qu'en plus d'avoir fait "flotter" ton div à droite, tu fais aussi "flotter" l'image. Une raison particulière à cela ? Un élément flottant voit son contenu s'écouler en dehors du flux. Ton bouton download commence donc là ou débute le flux normal d'où ton problème de couleur.

    Commence pas supprimer ton float:rightde ton image.

    Pour ton autre problème, dans le site que tu donnes en exemple, le texte passe pareillement en dessous de l'image s'il est assez long. Si tu veux l'éviter, tu peux, soit:

    - jouer avec une propriété qui crèe un nouveau contexte de formatage
    Avantage: on s'affranchit de la largeur de la colonne de droite
    Point "discutable": on détourne l'utilisation d'une propriété de sa fonction de base pour exploiter l'effet qu'elle induit

    - jouer avec un margin-right de la largeur de ta colonne de droite.

    Dans ton cas l'idéal serait d'ajouter genre un overflow:auto sur un contenur englobant ta partie de gauche. Si tu ne peux changer l'html tu n'as guère le choix que de passer par l'ajout d'un margin-right de 140px sur chacun des éléments concernés... (à voir selon ta structure quel sélecteur permettrait de les cibler au mieux)
    Les bons réflexes:
    • avant de poser une question:
      règles | faq | tutoriels | recherche
    • clarté, politesse, vocabulaire et orthographe soignés = efficacité
    • remercier ceux qui ont pris le temps d'aider et si c'est le cas

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2009
    Messages : 128
    Points : 46
    Points
    46
    Par défaut
    merci
    j'ai regardé karya sur firebug et il indique float right sur le div qui contient l'image et le bouton puis float right de l'image dans ce div.
    l'idée est de pousser l'image et le bouton à l'extrême droite de la place disponible et d'aligner le texte à gauche

    si tu le conseilles j'essayerai d'enlever ces float mais il me semble que dans jce si j'insère une image à droite avec texte autour elle est aussi float right ?

    où dois-je mettre le margin-right ?
    peut-on imaginer des <br> sous l'image pour allonger la hauteur de la partie droite pour forcer le texte de gauche à rester à gauche ?

    merci
    marc

  8. #8
    Membre émérite
    Avatar de Candygirl
    Femme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 912
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 51
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 912
    Points : 2 907
    Points
    2 907
    Par défaut
    Sur le site que tu prends en exemple il y a aussi, en plus, un float:right sur le p qui englobe le bouton. C'est un peu lourd... Après, tout dépend des contraintes / applications.

    Le margin-right de 140 serait à appliquer sur tous les éléments qui doivent rester à droite. Tes p dans ton exemple.
    Citation Envoyé par ml1234 Voir le message
    peut-on imaginer des <br> sous l'image pour allonger la hauteur de la partie droite pour forcer le texte de gauche à rester à gauche ?
    Non. C'est très moche et, de toute manière, tu n'as aucune idée du nombre que tu devrais en mettre puisque cela dépend de la taille des caractères (que tu ne maîtrises pas).
    Les bons réflexes:
    • avant de poser une question:
      règles | faq | tutoriels | recherche
    • clarté, politesse, vocabulaire et orthographe soignés = efficacité
    • remercier ceux qui ont pris le temps d'aider et si c'est le cas

Discussions similaires

  1. click sur une image - affichage <INPUT TEXT
    Par bilou95 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 21/05/2007, 11h13
  2. [HTML][DREAMWEAVER] Texte sur une image
    Par Nicos77 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 12/10/2005, 09h43
  3. Centrer un texte sur une image créée dynamiquement
    Par rigolman dans le forum Langage
    Réponses: 7
    Dernier message: 11/10/2005, 17h22
  4. Positionnement de texte sur une image
    Par inddzen dans le forum Windows
    Réponses: 2
    Dernier message: 08/08/2005, 12h22
  5. [HTML]Peut-on écrire un texte sur une image ?
    Par flogreg dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 28/02/2005, 17h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo