2013-09-06 10 views
5

Ho seguente blocco htmlCome faccio a creare uno sfondo triangolare con puro css

<div class=""header> 
    <i class="icon-star"></i> 
    <h1>some text goes here</h1> 
</div> 

e questi stili CSS

h1 { 
    display: inline-block; 
} 
i { 
    display: inline-block; 
    width: 0px; 
    height: 0px; 
    border-style: solid; 
    border-width: 200px 0 0 200px; 
    border-color: transparent transparent transparent red; 

} 

e anche io sto usando i font fontawesome icona. Quello che sto cercando di ottenere è questo enter image description here

Questo è quello che ho provato jsfiddle. ho completamente fallito nel farlo. Qualcuno può aiutarmi?

+0

Sei a metà strada, e uno per un tempo molto ben fatto domanda – Bojangles

+0

violino pazza, mi piace :) –

+1

tuo JS Fiddle collega i file di libreria di font JS-awesome in modo non corretto. – Raptor

risposta

0

mi sono trovato la risposta ..

0.123.516,41 mila

HTML

<div class=""header> 
    <i></i> 
    <h1>some text goes here</h1> 
</div> 

css

.header { 
    position: relative; 
} 

h1 { 
    margin: -130px 0 0 200px; 
} 
i { 
    color: red; 
    display: inline-block; 
    width: 0px; 
    height: 0px; 
    border-style: solid; 
    border-width: 200px 0 0 200px; 
    border-color: transparent transparent transparent black; 
} 
i:before { 
    font-family: 'FontAwesome'; 
    content: "\F005"; 
    font-size: 64px; 
    position: absolute; 
    top: 100px; 
    left: 40px; 
} 

jsfiddle

1

hai usato h1 nel tuo html e h2 nel tuo css!

questo può aiutare

h1 { 
    margin: -130px 0 0 200px; 
} 
i { 
    display: inline-block; 
    width: 0px; 
    height: 0px; 
    border-style: solid; 
    border-width: 200px 0 0 200px; 
    border-color: transparent transparent transparent red; 
} 

fiddle

+0

Grazie :). ho aggiornato la domanda e il jsfiddle. ma il problema rimane ancora. –

+0

hai provato la mia risposta ?! –

+0

sì. http://jsfiddle.net/vudmw/6/ –

1

Questo JFiddle potrebbe ottenere un po 'più vicino. Si prega di notare che questo è necessario che il triangolo di avere un'altezza fissa, così ho potuto utilizzare una line-height:

#text { 
float: right; 
line-height: 200px; 
vertical-align: middle; 
margin-right: 150px; 
font-weight: bold; 
font-size: 20px; 

Vuoi creare la stella nel triangolo utilizzando i CSS come bene?

+0

No .. io uso iconfonts per quello .. grazie mille per la tua risposta..ho trovato un modo per farlo –

+0

Prego! Assicurati di contrassegnarlo come "risposta" se era corretto;) –

1

come questo

dare line-height o position:absolute;

DEMO

CSS

h1 { 
    display: inline-block; 
    position:absolute; 
    line-height:150px; 

} 
+0

benvenuto, assicurati di contrassegnarlo come "risposta" se era corretto – falguni

0

Cosa ne pensate di questa soluzione? http://jsfiddle.net/XrAaP/

Ecco l'HTML. (Proper HTML. A differenza utilizzando il tag corsivo per altre cose ...)

<header> 
    <div class="triangle"></div> 
    <div class="foreground"> 
     <h1>Some text goes here</h1> 
     <p>*</p> 
    </div> 
</header> 

Ed ecco la CSS.

.triangle{ 
    border-style: solid; 
    border-width: 200px 0 0 200px; 
    border-color: transparent transparent transparent black; 
    display: inline-block; 
    vertical-align: top; 
} 

.foreground{ 
    display: inline-block; 
    vertical-align: top; 
} 

h1{ 
    margin-left: -128px; 
} 

p{ 
    color: #fff; 
    font-size: 8em; 
    margin: 0 0 0 -178px; 
} 
Problemi correlati