CSS text-decorationã®åãæŽ»çšããèŠèŠçã«é åçã§æå³ã®ããäžç·ãåãæ¶ãç·ãäœæããŸããããé«åºŠãªã¹ã¿ã€ãªã³ã°ãšã«ã¹ã¿ãã€ãºã®ãã¯ããã¯ãæ¢æ±ããŸãã
CSS text-decoration: é«åºŠãªäžç·ãšåãæ¶ãç·ã®ã¹ã¿ã€ãªã³ã°ããã¹ã¿ãŒãã
CSSã®text-decorationããããã£ã¯ãåãªãäžç·ãåãæ¶ãç·ä»¥äžã®æ©èœãæäŸããŸããããã¯ã¿ã€ãã°ã©ãã£ã匷åããç¹å®ã®èŠçŽ ã«æ³šæãåŒããããã«ã¯æå³çãªæå³ãäŒããããã®åŒ·åãªããŒã«ã§ãããã®å
æ¬çãªã¬ã€ãã§ã¯ãåºæ¬çãªäœ¿ãæ¹ããåµé çãªã«ã¹ã¿ãã€ãºãŸã§ãäžç·ãšåãæ¶ãç·ãã¹ã¿ã€ãªã³ã°ããããã®é«åºŠãªãã¯ããã¯ãæ¢ããŸãã
text-decorationã®åºæ¬ãçè§£ãã
é«åºŠãªãã¯ããã¯ã«é²ãåã«ãtext-decorationã®åºæ¬çãªããããã£ã確èªããŸãããïŒ
text-decoration-line:underlineïŒäžç·ïŒãoverlineïŒäžç·ïŒãline-throughïŒåãæ¶ãç·ïŒããŸãã¯noneïŒãªãïŒãªã©ãããã¹ãè£ é£Ÿã®çš®é¡ãæå®ããŸããtext-decoration-color: ããã¹ãè£ é£Ÿã®è²ãèšå®ããŸããtext-decoration-style:solidïŒå®ç·ïŒãdoubleïŒäºéç·ïŒãdashedïŒç Žç·ïŒãdottedïŒç¹ç·ïŒããŸãã¯wavyïŒæ³¢ç·ïŒãªã©ãç·ã®ã¹ã¿ã€ã«ãå®çŸ©ããŸããtext-decoration-thickness: ããã¹ãè£ é£Ÿã®ç·ã®å€ªããå¶åŸ¡ããŸãã
ãããã®ããããã£ã¯ãã·ã§ãŒããã³ãã®text-decorationããããã£ã«ãŸãšããããšãã§ããŸãïŒtext-decoration: line style color thickness;
äŸãã°ãtext-decoration: underline wavy red 2px;ã¯ã倪ã2ãã¯ã»ã«ã®æ³¢ç¶ã®èµ€ãäžç·ãäœæããŸãã
åºæ¬çãªäžç·ãè¶ ããŠïŒã«ã¹ã¿ãã€ãºãã¯ããã¯
åºæ¬çãªäžç·ãåãæ¶ãç·ã䟿å©ã§ãããtext-decorationã®çã®åã¯ãã®ã«ã¹ã¿ãã€ãºãªãã·ã§ã³ã«ãããŸãã
1. ç·ã®å€ªããå¶åŸ¡ãã
text-decoration-thicknessããããã£ã䜿çšãããšãç·ã®å€ªãã調æŽã§ããŸãã絶察åäœïŒäŸïŒpxãemïŒãŸãã¯çžå¯ŸåäœïŒäŸïŒautoãfrom-fontïŒã䜿çšã§ããŸãã
.thick-underline {
text-decoration: underline;
text-decoration-thickness: 4px;
}
.thin-underline {
text-decoration: underline;
text-decoration-thickness: 1px;
}
from-fontãšããå€ã¯ããã©ã³ããµã€ãºã«åºã¥ããŠå€ªããåçã«èª¿æŽããèŠèŠçãªäžè²«æ§ã確ä¿ããããç¹ã«äŸ¿å©ã§ãã
2. ç·ã®ã¹ã¿ã€ã«ã詊ã
text-decoration-styleããããã£ã¯ãèŠèŠçãªé¢çœã¿ãå ããããã«ããŸããŸãªç·ã®ã¹ã¿ã€ã«ãæäŸããŸãïŒ
solid: å®ç·ïŒããã©ã«ãïŒãdouble: äºéç·ãdashed: ç Žç·ãdotted: ç¹ç·ãwavy: æ³¢ç·ã
.dashed-underline {
text-decoration: underline dashed;
}
.dotted-underline {
text-decoration: underline dotted;
}
.wavy-underline {
text-decoration: underline wavy;
}
ãããã®ã¹ã¿ã€ã«ãç°ãªãè²ã倪ããšçµã¿åãããããšã§ããŠããŒã¯ãªå¹æãçã¿åºããŸãã
3. ç·ã®è²ã倿Žãã
text-decoration-colorããããã£ã䜿çšãããšãäžç·ãåãæ¶ãç·ã®è²ãã«ã¹ã¿ãã€ãºã§ããŸããããã¯éèŠãªããã¹ãã匷調ããããèŠèŠçã«é
åçãªã³ã³ãã©ã¹ããäœæãããããã®ã«äœ¿çšã§ããŸãã
.highlighted-link {
text-decoration: underline;
text-decoration-color: #FF6600; /* Orange */
}
ãŠã§ããµã€ãå šäœã®ã«ã©ãŒã¹ããŒã ãè£å®ããè²ã䜿çšããããšãæ€èšããŠãã ããã
4. ããã¹ãè£ é£Ÿããªãã»ãããã
CSSã«ã¯text-decoration-lineïŒäžç·ãåãæ¶ãç·ïŒãåçŽæ¹åã«æ£ç¢ºã«ãªãã»ããããçŽæ¥çãªæ¹æ³ã¯ãããŸããããä»ã®ãã¯ããã¯ã䜿çšããŠãã®å¹æãã·ãã¥ã¬ãŒãã§ããŸããäžè¬çãªã¢ãããŒãã®1ã€ã¯ãç䌌èŠçŽ ãšèæ¯ã°ã©ããŒã·ã§ã³ã䜿çšããæ¹æ³ã§ãã
ããã¹ãã®ããŒã¹ã©ã€ã³ããå°ãäžã«äœçœ®ããããã倪ãäžç·ãå¿ èŠãªã·ããªãªãèããŠã¿ãŸãããã以äžã®ããã«ããŠå®çŸã§ããŸãïŒ
.offset-underline {
position: relative; /* Required for pseudo-element positioning */
display: inline-block; /* Keeps underline width correct */
}
.offset-underline::after {
content: '';
position: absolute;
left: 0;
bottom: -5px; /* Adjust for desired offset */
width: 100%;
height: 3px; /* Adjust for desired thickness */
background-color: blue; /* Adjust for desired color */
}
.no-underline {
text-decoration: none; /* remove standard underline */
}
芪èŠçŽ ã®position: relativeã¯ãç䌌èŠçŽ ã®é
眮ã³ã³ããã¹ãã確ç«ããããéåžžã«éèŠã§ããdisplay: inline-blockã¯ãèŠçŽ ãå¹
ãšé«ãã®èšå®ãå°éããããã«ããŸãããããŠãç䌌èŠçŽ ïŒ::afterïŒã¯èŠªèŠçŽ ã«å¯ŸããŠçµ¶å¯Ÿé
眮ãããŸããbottomãšheightããããã£ã調æŽããŠãã·ãã¥ã¬ãŒããããäžç·ã®ãªãã»ãããšå€ªããå¶åŸ¡ã§ããŸããè²ãèšå®ããã«ã¯background-colorã䜿çšããŸããåºæ¬ã¯ã©ã¹ã«text-decoration: none;ãé©çšãããšããã©ãŠã¶ãæäŸããããã©ã«ãã®äžç·ã確å®ã«åé€ãããŸãã
5. ã¢ãã¡ãŒã·ã§ã³ä»ãäžç·ãäœæãã
CSSã®ãã©ã³ãžã·ã§ã³ãã¢ãã¡ãŒã·ã§ã³ã䜿çšããŠãã¢ãã¡ãŒã·ã§ã³ä»ãã®äžç·ãäœæã§ããŸããäŸãã°ããããŒæã«äžç·ã®text-decoration-colorãwidthãã¢ãã¡ãŒã·ã§ã³ãããããšãã§ããŸãã
.animated-link {
text-decoration: underline;
text-decoration-color: transparent;
transition: text-decoration-color 0.3s ease;
}
.animated-link:hover {
text-decoration-color: #007BFF; /* Blue */
}
ãã®ã³ãŒãã¯ãéæãªäžç·ãæã€ãªã³ã¯ãäœæãããããŒæã«æ»ãããªãã©ã³ãžã·ã§ã³ã§éè²ã«å€åãããŸãã
ãã1ã€ã®äººæ°ã®ãã广ã¯ãäžç·ã®å¹
ãã¢ãã¡ãŒã·ã§ã³ãããããšã§ããç䌌èŠçŽ ã®èæ¯ãšããŠç·åœ¢ã°ã©ããŒã·ã§ã³ã䜿çšãããããŒæã«background-sizeã調æŽããŠäžç·ã®è¡šç€ºãã¢ãã¡ãŒã·ã§ã³ãããããšãã§ããŸããããã¯ããé«åºŠãªæ¹æ³ã§ããããã€ãã£ãã®text-decoration:underlineã§çæãããäžç·ã®widthããããã£ãåçŽã«ã¢ãã¡ãŒã·ã§ã³ããããããæ»ãããªã¢ãã¡ãŒã·ã§ã³ã«ãªããŸãïŒ
.animated-underline {
position: relative;
display: inline-block;
text-decoration: none;
color: #000; /* Adjust text color */
overflow: hidden; /* Prevent background overflow */
}
.animated-underline::after {
content: '';
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 2px; /* Adjust underline thickness */
background: linear-gradient(to right, rgba(0, 123, 255, 0.5), rgba(0, 123, 255, 1)); /* Gradient for animation */
background-size: 0% 2px; /* Initial background size (0 width) */
background-repeat: no-repeat;
transition: background-size 0.3s ease;
}
.animated-underline:hover::after {
background-size: 100% 2px; /* Animate background size to full width */
}
ãã®äŸã§ã¯ãåéæã®éããåè²ã®éãžãšå€åããç·åœ¢ã°ã©ããŒã·ã§ã³ãå©çšããŠãç¹çްã§ãããªããé
åçãªã¢ãã¡ãŒã·ã§ã³ä»ãã®äžç·ãäœæããŸããoverflow: hidden;ã¯ã°ã©ããŒã·ã§ã³ãæ£ããã¯ãªãããããããšãä¿èšŒããŸãã
6. ã¢ã¯ã»ã·ããªãã£ã«é¢ããèæ ®äºé
ã«ã¹ã¿ã ã®ããã¹ãè£
食ã䜿çšããéã¯ãã¢ã¯ã»ã·ããªãã£ãèæ
®ããããšãäžå¯æ¬ ã§ããããã¹ããšäžç·ãŸãã¯åãæ¶ãç·ã®éã®ã³ã³ãã©ã¹ãããèŠèŠé害ã®ãããŠãŒã¶ãŒã«ãšã£ãŠååã§ããããšã確èªããŠãã ããããŸããããã¹ãè£
食ã匷調ã®ããã ãã«äœ¿çšããããšã¯é¿ããŠãã ãããã¹ã¯ãªãŒã³ãªãŒããŒãæå³ããæå³ãäŒããªãå¯èœæ§ãããããã§ããã¢ã¯ã»ã·ããªãã£ã®ããã«ã¯ã<strong>ã<em>ã®ãããªã»ãã³ãã£ãã¯HTMLèŠçŽ ãCSSã¹ã¿ã€ãªã³ã°ãšäœµçšããŠãã ããã
å ·äœçã«ã¯ããŠã§ãã³ã³ãã³ãã»ã¢ã¯ã»ã·ããªãã£ã»ã¬ã€ãã©ã€ã³ïŒWCAGïŒã§ã¯ãããã¹ããšãã®èæ¯ã«å¯ŸããŠå°ãªããšã4.5:1ã®ã³ã³ãã©ã¹ãæ¯ãæšå¥šããŠããŸããããã¯äžç·ããã®ä»ã®ããã¹ãè£ é£Ÿã«ãé©çšãããŸãããªã³ã©ã€ã³ããŒã«ã䜿çšããŠã³ã³ãã©ã¹ãæ¯ã確èªãããã¶ã€ã³ãã¢ã¯ã»ã·ãã«ã§ããããšã確èªããŠãã ããã
7. æå³çãªæå³ã®ããã®`text-decoration`ã®äœ¿çš
text-decorationã¯äž»ã«ã¹ã¿ã€ãªã³ã°çšã®ããããã£ã§ãããç¹å®ã®æèã§æå³çãªæå³ãäŒããããã«ã䜿çšã§ããŸããäŸãã°ïŒ
- åé€ãããããã¹ãã®åãæ¶ãç·ïŒ
line-throughã䜿çšããŠãåé€ãããããŸãã¯å€ãã³ã³ãã³ãã瀺ããŸããããã¯å ±åç·šéããã¥ã¡ã³ããããŒãžã§ã³ç®¡çã·ã¹ãã ã§ãã䜿çšãããŸãã - ãªã³ã¯ã®äžç·ïŒ åžžã«å¿ èŠãšããããã§ã¯ãããŸããããäžç·ã¯ãã€ããŒãªã³ã¯ãèå¥ããããã®äžè¬çãªæ £ç¿ã§ãããŠãŒã¶ãŒãéåžžã®ããã¹ããšãªã³ã¯ã容æã«åºå¥ã§ãããããååãªã³ã³ãã©ã¹ããšæç¢ºãªèŠèŠçåå³ã確ä¿ããŠãã ããã
ãã ãã䜿ãããã«æ³šæããæå³çãªæå³ãæç¢ºã§äžè²«ããŠããããšã確èªããŠãã ããã
é«åºŠãªåãæ¶ãç·ã®ãã¯ããã¯
text-decoration-line: line-through;ã䜿çšããŠå®çŸãããåãæ¶ãç·ããã¹ãã¯ãåé€ãããããŸãã¯å€ããªã£ãã³ã³ãã³ãã瀺ãã®ã«äŸ¡å€ããããŸããããããäžç·ãšåæ§ã«ã远å ã®ã¹ã¿ã€ãªã³ã°ã§åãæ¶ãç·ã匷åããããšãã§ããŸãã
1. ã¹ã¿ã€ã«ä»ãåãæ¶ãç·
äžç·ãšåæ§ã«ãåãæ¶ãç·ã«ãåãã¹ã¿ã€ãªã³ã°ããããã£ïŒtext-decoration-colorãtext-decoration-styleãtext-decoration-thicknessïŒãé©çšã§ããŸãã
.dashed-strikethrough {
text-decoration: line-through dashed red 2px;
}
ããã«ããã倪ã2ãã¯ã»ã«ã®ç Žç·ã®èµ€ãåãæ¶ãç·ãäœæãããŸãã
2. åãæ¶ãç·ã®ã¢ãã¡ãŒã·ã§ã³
åãæ¶ãç·ãã¢ãã¡ãŒã·ã§ã³ãããããšã§ãã³ã³ãã³ãã«åçãªå¹æãå ããããšãã§ããŸããäŸãã°ããããŒæãé ç®ãå®äºãšããŒã¯ããããšãã«ãç·ã®è²ã倪ããã¢ãã¡ãŒã·ã§ã³ãããããšãã§ããŸãã
.animated-strikethrough {
text-decoration: line-through;
text-decoration-color: gray;
transition: text-decoration-color 0.3s ease;
}
.animated-strikethrough.completed {
text-decoration-color: green;
}
ãã®ã³ãŒãã¯ãèŠçŽ ã«completedã¯ã©ã¹ãä»äžããããšåãæ¶ãç·ã®è²ãç·è²ã«å€æŽããå®äºããããšãèŠèŠçã«ç€ºããŸãã
3. èæ¯ã°ã©ããŒã·ã§ã³ã䜿çšããã«ã¹ã¿ã åãæ¶ãç·å¹æã®äœæ
ç䌌èŠçŽ ãšèæ¯ã°ã©ããŒã·ã§ã³ã¯ãåºæ¬çãªtext-decorationããããã£ãããå€ãã®å¶åŸ¡ãæäŸããã«ã¹ã¿ã åãæ¶ãç·å¹æãäœæããããã«ãå©çšã§ããŸããé
眮ãè²ãã¢ãã¡ãŒã·ã§ã³ã調æŽããŠãèŠèŠçã«é
åçãªçµæãåŸãããšãã§ããŸãããã®ããã»ã¹ã¯ããªãã»ããäžç·ãäœæããã®ãšéåžžã«ãã䌌ãŠããŸãã
.custom-strikethrough {
position: relative;
display: inline-block;
text-decoration: none; /* Remove default strikethrough */
color: #333; /* Base Text Color */
}
.custom-strikethrough::before {
content: '';
position: absolute;
top: 50%;
left: 0;
width: 100%;
height: 2px; /* Adjust thickness */
background-color: red; /* Strikethrough color */
transform: translateY(-50%); /* Vertical centering */
}
.animated-strike {
transition: width 0.3s ease-in-out;
width: 0; /* Initially hidden */
overflow: hidden; /* Clip the visible area initially */
display: inline-block;
}
.custom-strikethrough:hover .animated-strike{
width: 100%; /* Full width strikethrough on hover */
}
ãã®äŸã§ã¯ã::beforeç䌌èŠçŽ ã䜿çšããŠãããã¹ãã®åçŽäžå€®ã«æ°Žå¹³ç·ãäœæããŸããtop: 50%ãèšå®ããtransform: translateY(-50%)ã䜿çšããããšã§ãç·ãåçŽæ¹åã«æ£ç¢ºã«é
眮ããŸããããããã©ã³ãžã·ã§ã³ãšçµã¿åãããããšã§ããããŒæã«åçãªè¡šç€ºå¹æãäœæã§ããŸãã芪èŠçŽ ã®text-decoration: noneããããã£ã¯ããã©ã«ãã®åãæ¶ãç·ãåé€ããã«ã¹ã¿ã ã¹ã¿ã€ãªã³ã°ã®ããã®ã¯ãªãŒã³ãªç¶æ
ãæäŸããŸãã`animated-strike`ã¯ã©ã¹ã®`overflow: hidden`ãšåæå¹
0ããã¢ãã¡ãŒã·ã§ã³ã«ãã衚瀺ãå¯èœã«ããŸãã
å®è·µçãªäŸãšãŠãŒã¹ã±ãŒã¹
ããã§ã¯ãé«åºŠãªããã¹ãè£ é£Ÿãã¯ããã¯ãå®éã®ã·ããªãªã§ã©ã®ããã«äœ¿çšã§ããããããã€ãã®å®è·µçãªäŸã玹ä»ããŸãïŒ
- Eã³ããŒã¹ãµã€ãïŒ ã¢ãã¡ãŒã·ã§ã³ä»ãäžç·ã䜿çšããŠãç¹å¥ãªãã¡ãŒãå²åŒã匷調ããŸãã
- ã¿ã¹ã¯ç®¡çã¢ããªã±ãŒã·ã§ã³ïŒ ç°ãªãè²ã®åãæ¶ãç·ã䜿çšããŠãã¿ã¹ã¯ã®ã¹ããŒã¿ã¹ïŒäŸïŒå®äºããã£ã³ã»ã«ïŒã瀺ããŸãã
- å ±åç·šéããã¥ã¡ã³ãïŒ åãæ¶ãç·ã§åé€ãããããã¹ãã瀺ããäžç·ã§å€æŽææ¡ã匷調ããŸãã
- ããã°èšäºïŒ ã«ã¹ã¿ã äžç·ã䜿çšããŠãéèŠãªããŒã¯ãŒãããã¬ãŒãºã匷調ããŸãã
- äŸ¡æ Œè¡šïŒ åãæ¶ãç·ã§å ã®äŸ¡æ Œã衚瀺ããå²åŒäŸ¡æ Œã匷調ããŸããäŸãã°ãå€ãã®åœã§ã¯ã»ãŒã«æã«ä»¥åã®äŸ¡æ Œãåãæ¶ãç·ã§è¡šç€ºããã®ãäžè¬çãªæ £è¡ã§ãããã€ãããã©ã³ã¹ãªã©ã§ã¯ãæç¢ºãªäŸ¡æ Œæ¯èŒãæ³çã«çŸ©åä»ããããŠãããåãæ¶ãç·äŸ¡æ Œã¯äŸ¿å©ãªèŠèŠçæããããšãªããŸãã
ãã¹ããã©ã¯ãã£ã¹ãšèæ ®äºé
text-decorationã䜿çšããéã¯ã以äžã®ãã¹ããã©ã¯ãã£ã¹ãå¿ã«çããŠãããŠãã ããïŒ
- äžè²«æ§ãä¿ã€ïŒ æ··ä¹±ãé¿ããããããŠã§ããµã€ãå šäœã§äžç·ãšåãæ¶ãç·ã«äžè²«ããã¹ã¿ã€ãªã³ã°ã䜿çšããŸãã
- å¯èªæ§ã確ä¿ããïŒ èªã¿ã«ããããã®ã§ã¯ãªããèªã¿ããããåäžãããè²ãšã¹ã¿ã€ã«ãéžæããŸãã
- ç°ãªãããã€ã¹ã§ãã¹ãããïŒ ããã¹ãè£ é£Ÿãç°ãªãç»é¢ãµã€ãºãããã€ã¹ã§èŠæ ããè¯ãããšã確èªããŸãã
- ã¢ã¯ã»ã·ããªãã£ãåªå ããïŒ åžžã«ã¢ã¯ã»ã·ããªãã£ãèæ ®ãããã¶ã€ã³ã誰ã«ãšã£ãŠãå©çšå¯èœã§ããããšã確èªããŸãã
- 䜿ããããé¿ããïŒ ãŠãŒã¶ãŒãå§åããªãããã«ãããã¹ãè£ é£Ÿã¯æ§ããã«äœ¿çšããŸãã
çµè«
text-decorationããããã£ã¯ãã¿ã€ãã°ã©ãã£ã匷åããèŠèŠçã«é
åçãªå¹æãçã¿åºãããã®å€çšéãªæ¹æ³ãæäŸããŸããç·ã®å€ªãã®å¶åŸ¡ãã¹ã¿ã€ã«ã®è©Šè¡ãäžç·ãšåãæ¶ãç·ã®ã¢ãã¡ãŒã·ã§ã³ãšãã£ãé«åºŠãªãã¯ããã¯ããã¹ã¿ãŒããããšã§ãé
åçã§ã¢ã¯ã»ã·ãã«ãªãŠã§ããã¶ã€ã³ãäœæã§ããŸããããžãã£ããªãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ã確ä¿ããããã«ãã¢ã¯ã»ã·ããªãã£ãèæ
®ããäžè²«æ§ãä¿ã€ããšãå¿ããªãã§ãã ãããã»ãã³ãã£ãã¯HTMLãšå·§ã¿ãªCSSãçµã¿åãããããšã§ãããã¹ãè£
食ã®ããã³ã·ã£ã«ãæå€§éã«æŽ»çšãããŠã§ããµã€ãã®èŠèŠçããã³æ©èœçåŽé¢ãåäžãããããšãã§ããŸããå®éšãæãããæ°ããåµé çãªå¯èœæ§ãæ¢æ±ããŠãã ããïŒ