CSSã®ã¿ã§ããã¹ãã«ã°ã©ãã¼ã·ã§ã³ããªãã¬ã¯ããããããã¯ããã¯ï¼ã¡ãã£ã¨æ´æ°ï¼

ååã¯iOS5ã®Mobile Safariãã使ããããã«ãªã£ãHTML5ã»CSSã«ã¤ãã¦åç·¨ã¨å¾ç·¨ã«åãã¦ãç´¹ä»ãã¾ãããããã®ãªãã§èª¬æãã¦ããªãå°ããªãã¯ããã¯ã«ã¤ãã¦å°ãç´¹ä»ãããã¨æãã¾ãã
ä»åã¯CSSã§ããã¹ãã«ã°ã©ãã¼ã·ã§ã³ãããããã¯ããã¯ã«ã¤ãã¦ã§ãã
ååã®Web App Demoã§ã¯ããã¿ã¼ã¿ãã«ç¹æ®ãªWebFontã使ã£ã¦ã¢ã¤ã³ã³ã表示ãããããã«ãã¦ãã¾ããããã¿ããActiveã®ã¨ãã«è²ãå¤ãã£ã¦ã¨ãã§ã¯ãããããããã«ãªã£ã¦ãã¾ãã
ãã®ã¨ãã§ã¯ã广ã¯CSSã§ããã¹ãã«ã°ã©ãã¼ã·ã§ã³ãããããã¯ããã¯ãã¤ãã£ã¦ãã£ã¦ãã¾ãã

é常ãCSSã§ããã¹ãã«ã©ã¼ï¼colorããããã£ï¼ã«ã°ã©ãã¼ã·ã§ã³ãæå®ãããã¨ã¯ã§ãã¾ãããã:afterãæ¬ä¼¼ã¯ã©ã¹ããmask-imageãããããã£ãçµã¿åããã¦ä½¿ããã¨ã§ã°ã©ãã¼ã·ã§ã³ã®ãããªè¡¨ç¾ããããã¨ãã§ãã¾ããå
·ä½çã«ã©ã®ããã«ããã®ã解説ãã¾ãã
âãã£ããä»åã®ãã¢ãã¼ã¸ã¸ã®ãªã³ã¯ã¯ãã¡ãã§ãã
â Text Gradient Demo
id:y-kawaz CSSã«ããã¹ãæ¸ãã¨ãæ¬æ«è»¢åãªã®ã¯ã©ãã«ããªããªãã®ï¼ãããããé©å½ãªè¦ç´ ã«ã¯ã©ã¹ã¤ããã°ãã¬ã¤ã«ãªãã¨ãã§ããªããããã
ã¨ããæè¦ããã£ã¦ã確ãã«ï¼ã¨æã£ãã®ã§ã¡ãã£ã¨å¤ãã¦ã¿ã¾ããï¼ contentããããã£ã¯ã¿ã¤ãã«å±æ§ãèªãããã«ãã¦ãã¾ãããããã¨ããããã¾ãï¼
ã:beforeãã:afterãæ¬ä¼¼ã¯ã©ã¹ã®ã¬ã¤ã¤ã¼æ§é
ããè¦ç´ ã«å«ã¾ããããã¹ãã¨ã:beforeãã:afterãæ¬ä¼¼ã¯ã©ã¹ã«contentããããã£ã§è¿½å ããè¦ç´ ãããã«ããè¦ç´ ãå
æ¬ããè¦ç´ ã®ã¬ã¤ã¤ã¼é¢ä¿ã¯ãã®ããã«ãªãã¿ããã§ããï¼pè¦ç´ ãspanè¦ç´ ãå
æ¬ãã¦ããå ´åï¼

ã:beforeãã:afterãæ¬ä¼¼ã¯ã©ã¹ã§è¿½å ããè¦ç´ ã¯é常ãã¨ãã¨ã®ããã¹ããªã©ã¨ã¯éãªããªãã®ã§ãposition:absoluteãã§éããå ´åã®ã¬ã¤ã¤ã¼é åºã§ãã
ã¾ããz-indexããããã£ã§ä¸¦ã³æ¿ãããã¨ãã§ããã®ã§æ°ã«ããªãã¦ãããã®ããããã¾ããããz-indexã使ããªãã§ããå ´åã¯ãã®ããã«ãªãã¨è¦ãã¦ããã°è¯ãã¨æãã¾ãã
mask-imageããããã£ã¨ã°ã©ãã¼ã·ã§ã³ã§å¹æãã¤ãã
mask-imageããããã£ã¯ãã®ããããã£ãæå®ããè¦ç´ ã«ãã¹ã¯ãããããã¨ãã§ãã¾ããä¾ãã°ãåå½¢ã«ãã¹ã¯ã§åãæãããå ´åã¯å³ã®ãããªé»ãåå½¢ã®å¡ããããééç»åãç¨æãã¾ãã
mask-imageã§ã¯é»ãå¡ãã®é¨åã ãã表示ãããããã«ãã¹ã¯ããã¾ãã
é»ãåå½¢ã«ã¼ããããããã°ããã¹ã¯ãã¼ãã£ã¨ããã¬ãã¦ããã¾ãã
img{-webkit-mask-image:url(mask.png);}
mask-imageããããã£ã«ã¯backgroundããããã£ã¨åãããã«gradientãæå®ãããã¨ãã§ãã¾ãããªã®ã§ç»åã使ããªãã¦ãç°¡åãªãã¹ã¯ç»åãªãgradientã§ä½ãããã§ããã
ä¾ãã°ãä¸ã«åãã£ã¦ã ãã ãæ¶ãã¦ãããããªãã¹ã¯ã«ãããå ´åã¯ãä¸ã«åãã£ã¦éé度ãå¢ãã¦ãããããªã°ã©ãã¼ã·ã§ã³ãæå®ãã¾ããè²ãRGBAã§æå®ãã¾ãã
img{-webkit-mask-image:-webkit-linear-gradient(top, rgba(0,0,0,1), rgba(0,0,0,0));}
CSSã§ããã¹ãã«ã°ã©ãã¼ã·ã§ã³ãããã
ããããå¿ç¨ãããã¨ã§ãã:beforeãã:afterãæ¬ä¼¼ã¯ã©ã¹ã§è¿½å ãããæå¤§ï¼è²ã®ã°ã©ãã¼ã·ã§ã³ãããã¹ãã«å¯¾ãã¦å ãããã¨ãã§ãã¾ãã

å
·ä½çã«ã¯pè¦ç´ ã«å«ã¾ããããã¹ãã®ã«ã©ã¼ããã¼ã¹ã«ã©ã¼ã¨ãã¦ãã:beforeãã:afterãæ¬ä¼¼ã¯ã©ã¹ã§è¿½å ããè¦ç´ ã§ã°ã©ãã¼ã·ã§ã³ãããã¾ãã
ã¾ãã¯ãæ¬ä¼¼ã¯ã©ã¹ã§è¿½å ããè¦ç´ ã§è¿½å ããããã¹ãããã¼ã¹ã®ããã¹ãã¨ã´ã£ããéãªãããã«ãã¾ããpè¦ç´ ã«ã¯title屿§ã追å ãã¦ãcontentããããã£ã«ã¯ã¿ã¤ãã«å±æ§ãèªãããã«ãã¾ãã
ï¼æåã¯åãããããã:beforeæ¬ä¼¼ã¯ã©ã¹ã§ï¼è²ã ãã°ã©ãã¼ã·ã§ã³ãããã¾ãï¼
<p title="TEXT GRADIENT">TEXT GRADIENT</p>
p, p:before { position:absolute; top:0; left:0; } p:before { display:block; content:attr(title); }
次ã«ãã©ãããã°ã©ãã¼ã·ã§ã³ã«ããããæ±ºãã¦ããã¼ã¹ã®è¦ç´ ã¨æ¬ä¼¼ã¯ã©ã¹ã§è¿½å ããè¦ç´ ã®ããã¹ãã«ã©ã¼ã«æå®ãã¾ãã
ï¼ä¾ãã°ãæ°´è²ããæ¿ãéã«å¤åããã°ã©ãã¼ã·ã§ã³ã«ãããå ´åã¯ããã¼ã¹ã«ã©ã¼ãæ°´è²ã追å ããè¦ç´ ãæ¿ãéã«ï¼
p, p:before { position:absolute; top:0; left:0; color:#00b0ff; } p:before { display:block; content:attr(title); color:#003577; }
æå¾ã«æ¬ä¼¼ã¯ã©ã¹ã§è¿½å ããè¦ç´ ã«ã°ã©ãã¼ã·ã§ã³ãã¹ã¯ãããã¾ãã
p, p:before { position:absolute; top:0; left:0; color:#00b0ff; } p:before { display:block; content:attr(title); color:#003577; -webkit-mask-image:-webkit-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,1)); }
ãããããã«å¿ç¨ãããã¨ã§ããããããªããªã¨ã¼ã·ã§ã³ã®ããã¹ãã¨ãã§ã¯ããä½ããã¨ãã§ãã¾ãã
ç°¡åã«ä½ã£ã¦ã¿ãã¨ãã§ã¯ãã®ãµã³ãã«ã³ã¼ããç´¹ä»ãã¾ããï¼ã¹ã¿ã¤ã«ã¯ã«ã©ã¼ãã·ã£ãã¼ã®é¨åã®ã¿ã§ãï¼
p { color:#000; text-shadow:0 1px 0 #000; } pt1:after { color:#fff; -webkit-mask-image:-webkit-linear-gradient(top, rgba(0,0,0,1), rgba(0,0,0,0.4) 50%, rgba(0,0,0,0.2) 51%, rgba(0,0,0,0)); }
p { color:#44c0fe; text-shadow:0 -1px 0 rgba(255,255,255,0.6),0 1px 1px rgba(0,0,0,0.5); } p:before { color:#0036b4; -webkit-mask-image:-webkit-linear-gradient(-85deg, rgba(0,0,0,0), rgba(0,0,0,0) 40%, rgba(0,0,0,1) 80%, rgba(0,0,0,1)); } p:after { color:#d7edff; -webkit-mask-image:-webkit-linear-gradient(-85deg, rgba(0,0,0,1), rgba(0,0,0,1) 10%, rgba(0,0,0,0.25) 48%, rgba(0,0,0,0) 48%, rgba(0,0,0,0)); }
p { color:#fff100; text-shadow:0 1px 0 rgba(255,255,255,1),0 -1px 0 rgba(0,0,0,0.4); } p:before { color:#e4007f; -webkit-mask-image:-webkit-linear-gradient(45deg, rgba(0,0,0,0.5), rgba(0,0,0,0.5) 15%, rgba(0,0,0,0) 25%, rgba(0,0,0,0) 35%, rgba(0,0,0,0) 50%, rgba(0,0,0,0.5) 60%, rgba(0,0,0,1) 75%, rgba(0,0,0,1) 85%, rgba(0,0,0,1) ); } p:after { color:#00a0e9; -webkit-mask-image:-webkit-linear-gradient(45deg, rgba(0,0,0,0), rgba(0,0,0,0) 15%, rgba(0,0,0,0) 25%, rgba(0,0,0,0) 35%, rgba(0,0,0,0.5) 50%, rgba(0,0,0,0.8) 60%, rgba(0,0,0,0.5) 75%, rgba(0,0,0,0) 85%, rgba(0,0,0,0) ); }
P {
color:#755d41;
text-shadow:0 2px 0 #755d41,0 2px 1px rgba(0,0,0,0.8);
}
P:before {
color:#b6a57a;
-webkit-mask-image:-webkit-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,1) 40%, rgba(0,0,0,0) 90%, rgba(0,0,0,0));
}
P:after {
color:#fff;
-webkit-mask-image:-webkit-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0) 20%, rgba(0,0,0,0.2) 36%, rgba(0,0,0,0.5) 40%, rgba(0,0,0,0.2) 44%, rgba(0,0,0,0) 60%, rgba(0,0,0,0));
}
CSSã§ãªãã¬ã¯ããããã

ãã¾ãã§ãªãã¬ã¯ããå°ãç´¹ä»ãã¾ãããªãã¬ã¯ãã¯ãbox-reflectãããããã£ã§ããããã¨ãã§ãã¦ãããã¹ãã«éããåå°å¹æãã¤ãããã¨ãã§ãã¾ãã
ã¨ããã®ãå®ã¯ï¼å¹´åã®ãCSS3ã«ããTransition Effects 30ãã¨ããè¨äºã®æã«ç´¹ä»ãã¦ãã¾ãããã
ç¹°ãè¿ã説æãã¦ããã¨ãbox-reflectã«ã¯ããªãã¬ã¯ããæããæ¹åï½¥ãªãã»ããå¤ï½¥ãªãã¬ã¯ãã®ãã¹ã¯ã®3ã¤ã®ãã©ã¡ã¼ã¿ãæå®ãããã¨ãã§ãã¾ãã
ãªãã¬ã¯ããæããæ¹åã¯ããright, left, above, belowãã®ä¸ããæå®ã§ãã¦ãaboveã¯ä¸é¨ã»belowã¯ä¸é¨ã«åå°å¹æãæç»ãã¾ãã
ãã¹ã¯ç»åã¯æå®ããªãã¦ãããã§ãããæå®ããå ´åã¯mask-imageã¨åããããªå¤ãæå®ãããã¨ãã§ãã¾ãã
åç´ã«ãåºã«åå°ãã¦ãããããªå¹æãã¤ãããå ´åã¯ãã®ãããªæå®ã«ãªãã¾ããï¼ãªãã»ããå¤ã¯ããæãã«èª¿æ´ãã¦ãã ããï¼
img{-webkit-box-reflect: below -3px -webkit-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,0) 50%,rgba(0,0,0,0.5));}å
ç¨ã®ã°ã©ãã¼ã·ã§ã³ããã¹ãDemoã«ãªãã¬ã¯ããã¤ãããã¢ãä½ã£ã¦ã¿ã¾ããã
â Text Reflect Demo





