Result
円の中にテキストが自動で収まるようになっています
円はradial-gradient
を、回り込みはshape-outside
を用いますので、まだ実用向けとは言えません
css
.quote-wrapper { /*親*/ width : 300px ; height : 300px ; position : relative ; margin : 10 vh auto 0 ; } .text { width : 100% ; height : 100% ; /*円形グラデーション*/ background : radial-gradient( ellipse at center , rgba ( 0 , 128 , 172 , 1 ) 0% , rgba ( 0 , 128 , 172 , 1 ) 70% , rgba ( 0 , 128 , 172 , 0 ) 70.3% ); position : relative ; margin : 0 ; color : white ; } .text p { /*中のテキスト*/ height : 100% ; line-height : 1.25 ; padding : 0 ; text-align : center ; font-style : italic ; text-shadow : 0.5px 0.5px 1px rgba ( 0 , 0 , 0 , 0.3 ); } /*疑似要素で回り込み指定*/ .text::before { content : "" ; width : 50% ; height : 100% ; float : left ; shape-outside: polygon( 0 0 , 98% 0 , 50% 6% , 23.4% 17.3% , 6% 32.6% , 0 50% , 6% 65.6% , 23.4% 82.7% , 50% 94% , 98% 100% , 0 100% ); shape- margin : 7% ; } .text p::before { content : "" ; width : 50% ; height : 100% ; float : right ; shape-outside: polygon( 2% 0% , 100% 0% , 100% 100% , 2% 100% , 50% 94% , 76.6% 82.7% , 94% 65.6% , 100% 50% , 94% 32.6% , 76.6% 17.3% , 50% 6% ); shape- margin : 7% ; } .quote-wrapper blockquote footer { width : 100% ; position : absolute ; bottom : 25px ; font-size : 13px ; text-align : center ; font-style : italic ; text-shadow : 0.5px 0.5px 1px rgba ( 0 , 0 , 0 , 0.3 ); } .quote-wrapper::before { /*引用符*/ content : "\201C" ; font-size : 270px ; height : 82px ; line-height : 0.78 ; line-height : 1 ; position : absolute ; top : -48px ; left : 0 ; z-index : 1 ; font-family : sans-serif , serif ; color : #ccc ; opacity : 0.9 ; } |
html
< div class = "quote-wrapper" > < blockquote class = "text" cite = "" > < p >本文</ p > < footer >– 引用元とか</ footer > </ blockquote > </ div > |
can i use
現段階でのブラウザ対応状況です。今後の動きにご注意ください