28172 sujets
CSS et mise en forme, CSS3
lis des tutos css ou de la doc (genre css h1 sous google w3school) et adapte ce que tu trouve à ton besoin, car c'est trop basique pour qu'on te ponde du code tout fait.
Tu peux essayer de regarder du coté des background de titre et marge negative, positionement etc.
Edit : comme tu le dit dans ton titre il y aura un border quelques part
Modifié par ptitvincent (12 Jul 2011 - 15:50)
Tu peux essayer de regarder du coté des background de titre et marge negative, positionement etc.
Edit : comme tu le dit dans ton titre il y aura un border quelques part
Modifié par ptitvincent (12 Jul 2011 - 15:50)
Oui j'ai réussi avec ce code:
Mais le problème c'est que j'aimerais comme sur mon image exemple...la bordure s'arrête à x pixels de chaque côté (elle touche pas les bords)....
En gros il y a pas de moyen simple pour faire cela...
<h1><span>Mon titre</span></h1>
h1 {
background: #424242 url("../img/fond-h1.png") repeat-x center;
}
h1 span {
background: #424242;
}
Mais le problème c'est que j'aimerais comme sur mon image exemple...la bordure s'arrête à x pixels de chaque côté (elle touche pas les bords)....
En gros il y a pas de moyen simple pour faire cela...
Bonjour à toutes et à tous,
j'ai procédé avec une image de fond rouge avec, au milieu une ligne en noire. Voici l'image :
Elle a exactement les dimensions de la boite conteneur. Et voici le code HTML + CSS :
@+
Modifié par Artemus24 (13 Jul 2011 - 17:18)
j'ai procédé avec une image de fond rouge avec, au milieu une ligne en noire. Voici l'image :
Elle a exactement les dimensions de la boite conteneur. Et voici le code HTML + CSS :
<!doctype html>
<html>
<head>
<title>test</title>
<style type="text/css">
body {
background-color : skyblue;
}
#boite {
background-image : url(image.png);
background-repeat : no-repeat;
width : 400px;
height : 100px;
display : table-cell;
vertical-align : middle;
text-align : center;
font-family : "arial";
font-weight : bolder;
font-size : 32px;
font-style : italic;
padding : 0 10px;
}
#boite span {
background-color : red;
color : black;
padding : 0 30px;
}
</style>
</head>
<body>
<div id="boite"><span>bla bla bla bla</span></div>
</body>
</html>
Ce n'est qu'une ébauche mais je pense que le principe de ce que tu veux faire est là. @+
Modifié par Artemus24 (13 Jul 2011 - 17:18)
Blogger a écrit :
Je disais les côtés extérieurs...pas les bords du texte...j'ai oublié de préciser.
Mais sur ta maquette le trait touche bien les bords.
Sinon je pensais à un truc qui rejoins un peu l'idée de Vincent (sans utiliser d'image donc) :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Test</title>
<style type="text/css">
.machin {
padding: 1em;
background: #000;
}
.machin h1 {
padding: 0;
margin: 0 0 1em 0;
border-bottom: 1px solid #fff; /* le filet */
color: #fff;
text-align: center;
}
.machin h1 span {
padding: 0 15px;
position: relative; /* on sort du flux */
top: 0.5em; /* position par rapport au h1 */
background: #000;
}
</style>
</head>
<body>
<div class="machin">
<h1><span>Mon titre</span></h1>
</div>
</body>
</html>
Modifié par jb_gfx (13 Jul 2011 - 16:24)
Bonjour à toutes et à tous,
bien vu jb-gfx !
Pour faire un trait horizontal, dans un premier temps, j'ai pensé à la balise "<hr />" mais le plus difficile était de le centrer dans la boite et le mettre sous le texte. Puis j'ai adopté l'image en arrière plan.
Bien que Petit Vincent avait préconisée cette solution, je n'ai pas su comment utiliser la propriété CSS border.
@+
Modifié par Artemus24 (13 Jul 2011 - 17:15)
bien vu jb-gfx !
Pour faire un trait horizontal, dans un premier temps, j'ai pensé à la balise "<hr />" mais le plus difficile était de le centrer dans la boite et le mettre sous le texte. Puis j'ai adopté l'image en arrière plan.
Bien que Petit Vincent avait préconisée cette solution, je n'ai pas su comment utiliser la propriété CSS border.
@+
Modifié par Artemus24 (13 Jul 2011 - 17:15)
Bonjour,
il y aussi la piste du line-height + border-bottom et bien évidemment le span
Moyennant quelques corrections/surcharge pour Opéra et IEs pour se passer d'image.
code test avec une tite pointe de css3 pour coller un peu au screen.
Cordialement
il y aussi la piste du line-height + border-bottom et bien évidemment le span
Moyennant quelques corrections/surcharge pour Opéra et IEs pour se passer d'image.
code test avec une tite pointe de css3 pour coller un peu au screen.
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<title>simulacre border-middle ou striked-white-space </title>
<style type="text/css" media="screen">
body {background:#444;color:#999;text-shadow:0 0 2px #777;}
h1 {font-weight:normal;font-style:italic;line-height:0;margin:1em 0;text-align:center;border-bottom:1px solid #777;box-shadow:0 0 2px #777;height:0;}
h1 span {background:#444;padding:0 0.25em; line-height:0;vertical-align:middle;/* opera*/}
</style>
<!--[if ie ]><style>h1 span {position:relative;/* pour ie7 et inf */;vertical-align:auto;}</style><![endif]-->
</head>
<body>
<h1><span>TEST TEST TEST TEST TEST TEST </span></h1>
</body>
</html>
Cordialement
jb_gfx a écrit :
Mais sur ta maquette le trait touche bien les bords.
Sinon je pensais à un truc qui rejoins un peu l'idée de Vincent (sans utiliser d'image donc) :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Test</title> <style type="text/css"> .machin { padding: 1em; background: #000; } .machin h1 { padding: 0; margin: 0 0 1em 0; border-bottom: 1px solid #fff; /* le filet */ color: #fff; text-align: center; } .machin h1 span { padding: 0 15px; position: relative; /* on sort du flux */ top: 0.5em; /* position par rapport au h1 */ background: #000; } </style> </head> <body> <div class="machin"> <h1><span>Mon titre</span></h1> </div> </body> </html>
Nice, ta solution fonctionne...du coup j'ai réussi avec une image de fond, je préfère utiliser une image de fond.
<div class="machin">
<h1><span>Mon titre</span></h1>
</div>
.machin {
padding: 1px 10px 1px 10px;
background: #424242;
}
.machin h1 {
margin: 0;
padding: 10px 0 10px 0;
text-align: center;
color: #a5a5a5;
font-style: italic;
background: #424242 url("../img/fond-h1.png") repeat-x center;
}
.machin span {
background: #424242;
padding: 0 10px;
}
Et voici à quoi ressemble le résultat:
Du coup problème résolu, merci pour votre aide/réponses.
[EDIT] Quoi que non, je vais plutôt utiliser la méthide avec "border", ça évite de charger une image en plus...
Modifié par Blogger (13 Jul 2011 - 17:58)
gc-nomade a écrit :
code test avec une tite pointe de css3
Ah on peut utiliser du CSS3 ?
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8" />
<title>Test</title>
<style type="text/css">
h1 {
padding: 0;
margin: 0;
color: #fff;
height: 100px;
line-height: 100px;
text-align: center;
background: #000;
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #000000), color-stop(49.4%, #000000), color-stop(49.5%, #ffffff), color-stop(50.5%, #ffffff), color-stop(50.6%, #000000), color-stop(100%, #000000));
background: -moz-linear-gradient(top, #000000 0%, #000000 49.4%, #ffffff 49.5%, #ffffff 50.5%, #000000 50.6%, #000000 100%);
background: -o-linear-gradient(top, #000000 0%, #000000 49.4%, #ffffff 49.5%, #ffffff 50.5%, #000000 50.6%, #000000 100%);
}
h1 span {
padding: 0 15px;
background: #000;
}
</style>
</head>
<body>
<h1><span>Mon titre</span></h1>
</body>
</html>
Modifié par jb_gfx (13 Jul 2011 - 17:55)