2014-11-06 16 views
7

ho fatto un parallelogramma con CSS3 di skew trasformare, e posto il testo all'interno di un altro div che ha un valore opposto skew in modo che il testo rimane non-trasformato: JSFiddle example.CSS con il testo

C'è un modo per avere il testo allinea ai bordi del parallelogramma come questo:

enter image description here

Sono aperto ad altri suggerimenti, come ad esempio utilizzando il canvas se non è possibile usare i CSS . Se esiste una tecnica JavaScript per fare ciò, allora tutti i collegamenti che potrebbero essere utili sarebbero apprezzati.

UPDATE: Dopo la caccia per alcune soluzioni cross-browser, lo strumento più semplice che ho trovato per raggiungere questo obiettivo è stato con this tool.

+0

Credo che si dovrebbe provare a ruotare il testo come: http://jsfiddle.net/jm1wqemL/1/ –

+1

@VickyGonsalves - il problema con questo è che è chiaramente distorto il contenuto troppo –

+0

@DeeMac grande trovare! Potresti metterlo in una risposta per altre persone che stanno cercando la stessa cosa di me? Ho passato alcune ore frustranti a provare termini di ricerca diversi e non è emerso nulla di utile. – Enijar

risposta

5

Come richiesto, la risposta risiede nell'uso di -webkit-shape-inside: http://hongkiat.com/blog/css3-content-wrapping

Definire un polygon con i punti che corrispondono alla vostra parallelogramma e il contenuto si adatta quella forma.

SUGGERIMENTO: per ottenere i "punti" della forma, esportarla come un vettore da un software di progettazione grafica adatto e in SVG saranno le coordinate.

+3

Mentre funziona, vorrei aggiungere che al momento esiste solo un supporto limitato per browser per 'shape-inside'. – markE