éåžžã®ãã©ãŠã¶ã®ãããã®ããŒãžã³ã®ãµã€ãºã¯ãh1ãh3ã§æžãh3ãh6ã§å¢ããšãªã£ãŠããããããã§ã¯h1ãh6ã§æžãšããã
ããã font-size ã® 1.2 åã ãšããããšãããããå®éã«åãã©ãŠã¶ã§ã¿ãŠã¿ããšããã©ã³ãã«äŸåããŠå«ã«äœãã£ããïŒç¹ã« MS ç³»ãã©ã³ããå¹³æææããªã©ç±æ¥ïŒãå«ã«é«ãã£ããïŒç¹ã«å°å¡ææããªã©ç±æ¥ãããã»ã©å€ããªãïŒãããããã§ããã
æ°ããã®åæãã©ã³ãã§ã¯ã»ã©ã»ã©ã«é«ããŠãçè ã¯èªã¿ããããšèãããããŸãã«ã®ãã®ãã ãšè¡ãé·ããšãã«èªã¿ã¥ãããã ãããšèšã£ãŠãå°å¡ææã®ããã«ãã©ãããããšãå«ã«é«ããŠãéãæããã
ãã©ãŠã¶ã§ãããããªã®ã¯ãããããããšãã«ãã®é«ãããã©ã³ãã§å®çŸ©ãããŠããŠããã©ã³ããµã€ãºã«ãã®é«ããå ç®ããå€ããç®åºããŠããã®ã§ã¯ãªãããšæã£ãããããããããªãã
ãšã¯èšãããã©ã³ãã®èšå®ã«ããè¡éããããããªã®ã¯éåžžã«èªã¿ã¥ããã®ã§ããã決ãæã¡ããŠããŸãããšã«ããã
ãã£ãšãèªã¿ãããã£ããã©ãŠã¶ Firefox äžã§èšæž¬ããçµæããã©ã³ããµã€ãº 16pt ã®ãšãã«ããŠã³ãã£ã³ã°ããã¯ã¹ã®é«ãã 24.5pt ãªã®ã§ã1.5 åãš 1.6 åãè©ŠããŠã¿ããããã¯ãæ£ç¢ºã« \(\frac{24.5}{16}\) ãããããã ã以äžã® CSS ãã©ããã«æžããŠããã°ããã
body { line-height: 1.53125; }
éåžžã®ãã©ãŠã¶ã®æ°Žå¹³ç·ã®ããŒããŒã®ãµã€ãºã¯ãäžäžå·Šå³ã1,1,1,1ãšãªã£ãŠããããããã§ã¯é«ãã®ã¿1ãšããã
ããŒã«ãããããç¡è«ã®ããš Javascript ã䜿ããã«å®çŸããã以äžã®ã¹ã¿ã€ã«ã䜿ãæ¹ã«ãã£ãŠéžã¶ããšãã§ããæ¯ãèããã¿ãã«ã¯ããŠã¹ããããŒããŠã¿ããšããã
ãããããããŒã«ããããéªéã§äžã®èŠçŽ ãéžã¹ãªããã¿ãããªããšã¯é²ãã§ããã®ã§ã¹ãã¬ã¹ããªããšæããã
details[open] > summary
ã«ãŠãç¡è«ã®ããš Javascript ã䜿ããã«ã¢ãã¡ãŒã·ã§ã³ãå®çŸããã
@media screen { details:not(.horizontally):not(.diagonally)[open]:not(.noanimation) > summary ~ * { animation: details-vertically-open 1.6s ease; } } @keyframes details-vertically-open { 0% { opacity: 0; max-height: 0; } 100% { opacity: 1; max-height: 100vh; } }
ãããèšå®ããŠããã°ãdetails > summary
ã¯åŸã
ã«éãã®ã§é²èŠ§è
ãã®ã§ããšãããªãã§ãããdetails > summary ~ div
ã§äžèº«ã div
äžã€ã«ãŸãšããŠãããæ¹ã奜ãŸãããããããªããããããªããŠãããã§ãŒãã€ã³ã¯ããã®ã§éåæã¯ãã»ã©ç¡ãã ããã
éãããšãã®ã¢ãã¡ãŒã·ã§ã³ã¯ãã©ããããããã解ããªããéãããšããçŽ æ©ããŠãããã®ã§ã¢ãã¡ãŒã·ã§ã³ããæ¹ããã¿ãŒã ãšæãã
Safari ã§ã¯ãªããååããã¢ãã¡ãŒã·ã§ã³ããªãã®ã§ãèŽãæ¹ãªã Javascript ã«ããã¢ãã¡ãŒã·ã§ã³ããã¡ãã«ãŠå®çŸããã移è¡ãããããèšèšããå ããŠãéãããšãã®ã¢ãã¡ãŒã·ã§ã³ã«ã察å¿ããã®ã§ãå€å°å¯¿åœã¯é·ãæ¹çãšèšããã ãã (2021/08/15 è¿œèš)ã
ã¿ãããç¡è«ã®ããš Javascript ã䜿ããã«å®çŸããããFunctional CSS Tabs RevisitedããšãFunctional CSS Tabs Re-Revisitedããåèã«ããŠããã£ã³ã°ã®èª¿æŽããããããããåè
ã¯ã·ã³ãã«ã§äœ¿ããããã®ã ãã¿ããäžè¡ã«å¶éãããŠãããªã©ã®æ¬ ç¹ããããåŸè
ã¯æ¬ ç¹ã解æ¶ãããŠããããéäžã§ãã©ã³ããµã€ãºãé¶ã«ãããªã©ã®èæïŒã䜿ã£ãŠããã®ã§å°ã
ããªãããŒã§ãããããã§ã¯åŸè
ãçè
ã調æŽãã CSS ã®å®çŸäŸãå
容ã解説ãå
ŒããŠçŽ¹ä»ããããªãªãžãã«ãæå
ã§ã¯æ®ããŠããã®ã§ãã¯ã©ã¹å㯠tabs
ã tabset
ãªã©ãšå€æŽãããŠããã£ãããã®ä»ã现ããå€æŽç¹ã¯ã¿ãã®æ ç·ãè§äžžã«ãããããããã¬ã¬ã·ãŒãªãã©ãŠã¶ã«ã¯é
æ
®ããŠããªãã®ã§æ³šæãã¡ãªã¿ã«ãåŸè
ã¯å
ã
ã¬ã¬ã·ãŒãªãã©ãŠã¶ã«ããªãé
æ
®ããŠãããå¿
ããªãªãžãã«ããããããšã
ãFunctional CSS Tabs Revisitedããæ¯èŒããããããã«èª¿æŽãããã®ã
.tabset { position: relative; margin-top: 1em; height: var(--tabset-height, 25em); clear: both; } .tabset > .tab { float: left; } .tabset > .tab > label { position: relative; background: #0001; border-color: #0003; padding: .5em; border-width: 1px 1px 0 1px; border-style: solid; border-radius: .5em .5em 0 0; } .tabset > .tab > input[type='radio'] { display: none; } .tabset > .tab > div { background: var(--background-color, white); border-color: #0003; position: absolute; top: calc(1.3em + .5em - 2px); left: 0; right: 0; bottom: 0; padding: .5em; border-width: 1px 1px 1px 1px; border-style: solid; } .tabset > .tab > input[type='radio']:checked ~ label ~ div { z-index: 1; } .tabset > .tab > input[type='radio']:checked ~ label { z-index: 2; background: var(--background-color, white); border-color: #0003; border-width: 1px 1px 0 1px; border-style: solid; border-radius: .5em .5em 0 0; }
䜿ãæ¹ã¯å¥ã®ã¿ãã«ãŠã
ã·ã³ãã«ã§å€§å€çŽ æŽãããã®ã§ããããã¿ãã»ããã«ç¶ãã³ã³ãã³ããããã¿ãå ãããçšåºŠé·ããšãç¶ãã³ã³ãã³ããèŠãããŠããŸãããã¯ã re2visited ãã次ã®äŸã®æ¹ãå®çšçãªããã§ããã
ãFunctional CSS Tabs Re-Revisitedããæ¯èŒããããããã«èª¿æŽãããã®ã
.tabset { --tab-padding-factor: .4; font-size: 0; margin-top: var(--font-size, 16px); } .tabset:after { clear: both; content: ''; display: table; } .tabset > .tab { display: inline; } .tabset > .tab > label { background: #0001; border-color: #0003 #0003 #0000 #0003; display: inline-block; font-size: var(--font-size, 16px); left: 1px; margin-left: -1px; padding: calc(var(--font-size, 16px) * var(--tab-padding-factor)); position: relative; vertical-align: bottom; border-width: 1px 1px 1px 1px; border-style: solid; border-radius: .5em .5em 0 0; } .tabset > .tab > input[type='radio'] { clip: rect(0 0 0 0); height: 0; opacity: 0; position: fixed; width: 1px; z-index: -1; } .tabset > .tab > .tab_wear { display: inline; display: inline-block; overflow: hidden; position: relative; height: 0; width: 0; } .tabset > .tab > .tab_wear > .tab_body { box-sizing: border-box; display: block; background: var(--background-color, white); border-color: #0003; padding: .5em; float: left; font-size: var(--font-size, 16px); margin-top: -1px; width: 100%; border-width: 1px 1px 1px 1px; border-style: solid; } .tabset > .tab > input[type='radio']:checked ~ label { background: var(--background-color, white); border-color: #0003; padding-bottom: calc(var(--font-size, 16px) * var(--tab-padding-factor) + 1px); border-width: 1px 1px 0 1px; border-style: solid; border-radius: .5em .5em 0 0; z-index: 1; } .tabset > .tab > input[type='radio']:checked ~ .tab_wear { display: inline; }
䜿ãæ¹ã¯å¥ã®ã¿ãã§ã
æ¬ç¯ã§å®éã«äœ¿ã£ãŠããã®ããã¡ãã§ãããããã¯å ã®äŸããã¯ããæå·§çã ãå®çšçã§ããããããããã¯ããã©ã³ããµã€ãºãé¶ã«ããŠããç¹ãæ°ã«ãªãã
ã€ãã§ã«ãã¿ãå ã®ã³ã³ãã³ãã«ãã®ã¿ãããã¹ãããŠãããšãæããïŒã»ãŒæå³ããéãã«ãã¹ãããã¿ãã«ãªãã®ã ãèªã¿èŸŒã¿åæã«å€åŽã®ã¿ãäžã€ãéãããŸãŸã§ãããäžåºŠéãã°æ£åžžã«åäœããŠãããå åŽã®ã¿ãã¯æ£åžžã«åäœããŠããã
ãããã¯ä»¥äžã®ããã«äœ¿ãã°ããã
<div class="tabset"> <div class="tab"> <input type="radio" checked="" name="tabset-1" id="tabset-1-1"> <label for="tabset-1-1">ã¿ã 1</label> <div class="tab_wear"><div class="tab_body"> <h2>ã¿ã 1</h2> ã¿ã 1 </div></div> </div> <div class="tab"> <input type="radio" name="tabset-1" id="tabset-1-2"> <label for="tabset-1-2">ã¿ã 2</label> <div class="tab_wear"><div class="tab_body"> <h2>ã¿ã 2</h2> ã¿ã 2 </div></div> </div> </div>
åæ¹ã§åãããã«äœ¿ããããã«ãdiv.tab_wear
ãäžæåãŸããŠããããRevisited ã®æ¹ã§ã¯äžèŠã§ããã
ãããã CSS ãã¬ãŒã ã¯ãŒã¯ã§ã¯ãã€ãããã ããçŽ ã§æžãã«ã¯ååã®ç®¡çãæ¬åœã«é¢åããããã¡ã¿ãªãã¬ãŒã ã¯ãŒã¯ã䜿ãã°ããã®ã ããããããã¬ã€ã¢ãŠãã«ç¡é¢ä¿ãªåå管ç㯠Javascript ã«èªåçæãããŠæ¥œãããã®ãæãªã®ãããããªãã次ã®ã¿ãã§ããã玹ä»ããã
以äžã® Javascript ã script
ã¿ã°å
ã«æžããŠããã°èªåçã«èŠçŽ éã®é£æºã«å¿
èŠãªé¢é£ä»ãããã£ãŠãããã
function document_automatic_tabset_setting() { let tabset_index = 0; for (const tabset of document.body.querySelectorAll('.tabset')) { let tab_index = 0; ++tabset_index; for (const tab of tabset.querySelectorAll('.tabset > .tab')) { const input = tab.querySelector(".tabset > .tab > input[type='radio']"); const label = tab.querySelector(".tabset > .tab > input[type='radio'] ~ label"); ++tab_index; input.name = `tabset-${tabset_index}`; input.id = `tabset-${tabset_index}-${tab_index}`; label.setAttribute('for', `tabset-${tabset_index}-${tab_index}`); } console.log(tabset.outerHTML); } } window.addEventListener('load', function() { document_automatic_tabset_setting(); });
ãããåžžçšããããšã¯æšå¥šããªãããã¿ãã»ããã®æ§æã決ãŸããŸã§ã®éã¯ããã§åãã§ãããŠã倧æ ã決ãŸã£ããèªåçã«ã€ããããååãå«ã HTML ã«å šçœ®æãããã°ããã
ãããã for
å±æ§ã®ãããªãã®ã¯è¿é£ã®èŠçŽ ãžã®ã¢ã¯ã»ã¹ãå€ãã®ã ãã id
ãªã©ä»ããªããŠãæ©èœãããããªä»çµã¿ããªãã®ãããããããã®å Žåãfor="sel('< input[type=\"radio\"]')"
ãšã§ãæžããã°ããã ããããããããã®ããªãããã¡ã¿ãªãã¬ãŒã ã¯ãŒã¯ãæŽåãããšããã®ãæ¬éãããªãæ°ãããã
çè ãæãå ããã®ã¯ãã¬ã¬ã·ãŒãã©ãŠã¶ãç ç²ã«ããŠèª¿æŽã®ãããããåªå ã«ããã®ã§æ³šæãããããæ¬ç¯ãåèã«ãããªããããããããªãªãžãã«ãåèã«ããŠããã ãããã
è¡šé¡ã«ã€ããŠãã¡ãã£ãšåéããããã«ãªã£ããããã¡ããšç¢ºãããŠçŽåŸããã®ã§ããã®éçšãæ®ããŠãããããèããŠã¿ããåœç¶ã®æ¯ãèããªã®ã ããå°æ¥ã¯ããããããšãå¯èœã«ãªãã®ãããããªãã
ãŸãã--font-size: calc(1em);
ã div
ã§å®çŸ©ãããå€æ°å®çŸ©ãå¹ããŠããããšã確èªããããã«ãåæã« --foreground-color: blue;
ã䜵ããŠå®çŸ©ããŠããã
ãã® div
å
ã§ã¯ãã©ã³ããµã€ãºãå€ããŠããªãã次ã®ãã¹ããã div
ã§ãã©ã³ããµã€ãºã x-small
ã«ããã
æåã¯å°ãããªãã次ã®ããã«ãã¹ããã div
ã§ãã©ã³ããµã€ãºãå€æ° --font-size
ã§æ»ãããããã£ãŠã¿ããå€æ°å®çŸ©ã®åäœç¢ºèªã®ãããå€æ° --foreground-color
ã§åæ¯è²ã®èšå®ã䜵ããŠè¡ãã
ãã¯ããæ»ããªããCSS ã®å€æ°ã¯å®çŸ©ãããšãã«è©äŸ¡ãããå€ã§ã¯ãªãã䜿ããšãã«è©äŸ¡ãããããã§ãããäžæ¹ãåæ¯è²ã¯ç¢ºãã«å€ãã£ãŠããã
次ã«ã--font-size: 1em;
ã div
ã§å®çŸ©ãããå€æ°å®çŸ©ãå¹ããŠããããšã確èªããããã«ãåæã« --foreground-color: darkgreen;
ã䜵ããŠå®çŸ©ããŠããã
ãã® div
å
ã§ã¯ãã©ã³ããµã€ãºãå€ããŠããªãã次ã®ãã¹ããã div
ã§ãã©ã³ããµã€ãºã x-small
ã«ããã
æåã¯å°ãããªãã次ã®ããã«ãã¹ããã div
ã§ãã©ã³ããµã€ãºãå€æ° --font-size
ã§æ»ãããããã£ãŠã¿ããå€æ°å®çŸ©ã®åäœç¢ºèªã®ãããå€æ° --foreground-color
ã§åæ¯è²ã®èšå®ã䜵ããŠè¡ãã
ãã¯ããæ»ããªããCSS ã®å€æ°ã¯å®çŸ©ãããšãã«è©äŸ¡ãããå€ã§ã¯ãªãã䜿ããšãã«è©äŸ¡ãããããã§ãããäžæ¹ãåæ¯è²ã¯ç¢ºãã«å€ãã£ãŠããã
æåŸã«ã--font-size: 16px;
ã div
ã§å®çŸ©ãããå€æ°å®çŸ©ãå¹ããŠããããšã確èªããããã«ãåæã« --foreground-color: magenta;
ã䜵ããŠå®çŸ©ããŠããã
ãã® div
å
ã§ã¯ãã©ã³ããµã€ãºãå€ããŠããªãã次ã®ãã¹ããã div
ã§ãã©ã³ããµã€ãºã x-small
ã«ããã
æåã¯å°ãããªãã次ã®ããã«ãã¹ããã div
ã§ãã©ã³ããµã€ãºãå€æ° --font-size
ã§æ»ãããããã£ãŠã¿ããå€æ°å®çŸ©ã®åäœç¢ºèªã®ãããå€æ° --foreground-color
ã§åæ¯è²ã®èšå®ã䜵ããŠè¡ãã
ããã¯ãæ»ããããããæ»ããŠãããšãããããã ã®å€æ°ã®å€ã®é©çšã ãããããããšããããããã§ã¯ãªããã€ãŸããç¶æ ã®ä¿åãšããç®ç㧠CSS å€æ°ã䜿ãããšã¯ã§ããªãã
ããããã¹ã¿ã€ã«å±æ§ã§ CSS å€æ°ã®å®çŸ©ãã§ããããšããã®ãä»çµã¿ã®ã¡ãã£ãšããåéãã ã£ãã®ã ããæ®éã®ããã°ã©ãã³ã°èšèªãªããé 延è©äŸ¡ããªããã®ãåŸããå®è£ ããããããŠãåºæ¬çã«ã¯è©äŸ¡ããå€ãä¿æããŠããæ¹ãå¹ççãªã®ã ããCSS/HTML ã¯ãšã«ããæååã®ãŸãŸä¿æããŠãããŠäœ¿ããšãã«è©äŸ¡ãããšããã®ãåºæ¬çãªèšèšææ³ãªã®ã ããããªã®ã§ãç¹æ®µãéåæãšãããã®ã¯ãªãã
ãããããããä»æ§ãå¿
èŠãšããããªãïŒç§ã¯å¿
èŠãªã®ã ãïŒã--font-size: eval(1em);
ãªã©ãšããããšã«ãªããããæå€ãšå°æ¥ãããã£ãé¢æ°ãå°å
¥ããããããããªã (2021/07/18 èš)ã
ãããããå€æ°ã䜿ããšãã«ã¯ var
ãå¿
èŠãšãªãã®ã«ãå€æ°åã«ã--
ããªã©ãšããæ¥é èŸãå¿
èŠãšãªã£ãŠããããšèªäœãèšèšãã¹ããªæ°ãããã®ã§å€ããæåŸ
ããŠãèããã ããããããªãã
ããã®è©±é¡ã¯ CSS å€æ°ïŒã«ã¹ã¿ã ããããã£ïŒãšãã®å¯¿åœã«é¢ä¿ããã
ããŠãtable[border]
ã€ãŸããããŒãã«ã® border
å±æ§ã HTML Live Standard ã§å»æ¢ãšããããšã§ããã©ãŠã¶ãäºå®äžãµããŒããç¶ãããããããªãããæºåã¯ããŠãããããšæã£ãã
æ¬ç¯ã®æ«å°Ÿã§çŽ¹ä»ããã¯ã©ã¹ä»ãããŒãã«ã¹ã¿ã€ã« table.border
ã䜿ããšãborder
å±æ§ä»ãããŒãã«ãšã»ãŒç䟡ãªèŠæ ãã«ãªããå·Šããã©ãŠã¶æ¢å®ãå³ããã®ã¹ã¿ã€ã«ã«ããå®çŸã§ããã
0,0 | 0,1 | 0,2 | 0,3 | 0,4 | 0,5 | 0,6 | 0,7 |
---|---|---|---|---|---|---|---|
1,0 | 1,1 | 1,2 | 1,3 | 1,4 | 1,5 | ||
2,0 | 2,1 | 2,2 | 2,3 | 2,4 | 2,5 |
0,0 | 0,1 | 0,2 | 0,3 | 0,4 | 0,5 | 0,6 | 0,7 |
---|---|---|---|---|---|---|---|
1,0 | 1,1 | 1,2 | 1,3 | 1,4 | 1,5 | ||
2,0 | 2,1 | 2,2 | 2,3 | 2,4 | 2,5 |
ããã§å®çšçã«ã¯ååãªã®ãããããªãããå€å°æ±çšæ§ãæãããããborder="2"
ãšæå®ãããšãã®ããã«ã¹ã¿ã€ã«ãã¡ã€ã«ã§èŠæ ããå®çŸããããã®ããã« CSS å€æ°ã掻çšããŠã¿ãããã€ã³ã©ã€ã³ã¹ã¿ã€ã«å®çŸ©ãšããŠããŒãã«ã®å±æ§ style="--table-border-width: 2px;"
ãä»èšããã°ãããå·Šããã©ãŠã¶æ¢å®ãå³ããã®ã¹ã¿ã€ã«ã«ããå®çŸã§ããã
0,0 | 0,1 | 0,2 | 0,3 | 0,4 | 0,5 | 0,6 | 0,7 |
---|---|---|---|---|---|---|---|
1,0 | 1,1 | 1,2 | 1,3 | 1,4 | 1,5 | ||
2,0 | 2,1 | 2,2 | 2,3 | 2,4 | 2,5 |
0,0 | 0,1 | 0,2 | 0,3 | 0,4 | 0,5 | 0,6 | 0,7 |
---|---|---|---|---|---|---|---|
1,0 | 1,1 | 1,2 | 1,3 | 1,4 | 1,5 | ||
2,0 | 2,1 | 2,2 | 2,3 | 2,4 | 2,5 |
Firefox, Chrome, Safari ãããããç°ãªãã®ã§ãŸã£ããåãã«ã¯ãªããªããããããããèªç¶ãªæ§çžã«ãªã£ãŠããšæãã
ããŠããã£ãããããŸã§åçŸã§ããã®ã§ãå°ã調åã«ä¹ã£ãŠä»ã«ãã䜿ããã table[border][rules='all']
ã ãã¯ãµããŒãããŠããããšæã£ãã
æ¬ç¯ã®æ«å°Ÿã§çŽ¹ä»ããã¯ã©ã¹ä»ãããŒãã«ã¹ã¿ã€ã« table.border_rules-all
ã䜿ããšãborder
, rules='all'
å±æ§ä»ãããŒãã«ãšã»ãŒç䟡ãªèŠæ ãã«ãªããå·Šããã©ãŠã¶æ¢å®ãå³ããã®ã¹ã¿ã€ã«ã«ããå®çŸã§ããã
0,0 | 0,1 | 0,2 | 0,3 | 0,4 | 0,5 | 0,6 | 0,7 |
---|---|---|---|---|---|---|---|
1,0 | 1,1 | 1,2 | 1,3 | 1,4 | 1,5 | ||
2,0 | 2,1 | 2,2 | 2,3 | 2,4 | 2,5 |
0,0 | 0,1 | 0,2 | 0,3 | 0,4 | 0,5 | 0,6 | 0,7 |
---|---|---|---|---|---|---|---|
1,0 | 1,1 | 1,2 | 1,3 | 1,4 | 1,5 | ||
2,0 | 2,1 | 2,2 | 2,3 | 2,4 | 2,5 |
çŽ æŽãããïŒå®çšäžããããã®å±æ§ïŒäœããrules='all'
ã®ãšãã®ã¿ïŒããã©ãŠã¶ã§å»æ¢ãããŠãå°ããªãã
äžå¿ãborder="5"
ãšãããšãã®å¯Ÿå¿ãšããŠãã€ã³ã©ã€ã³ã¹ã¿ã€ã«å®çŸ©ãšããŠããŒãã«ã®å±æ§ style="--table-border-width: 5px;"
ãä»èšãããã®ãå®çŸããŠãããã
0,0 | 0,1 | 0,2 | 0,3 | 0,4 | 0,5 | 0,6 | 0,7 |
---|---|---|---|---|---|---|---|
1,0 | 1,1 | 1,2 | 1,3 | 1,4 | 1,5 | ||
2,0 | 2,1 | 2,2 | 2,3 | 2,4 | 2,5 |
0,0 | 0,1 | 0,2 | 0,3 | 0,4 | 0,5 | 0,6 | 0,7 |
---|---|---|---|---|---|---|---|
1,0 | 1,1 | 1,2 | 1,3 | 1,4 | 1,5 | ||
2,0 | 2,1 | 2,2 | 2,3 | 2,4 | 2,5 |
rules='all'
以å€ã®ã¯ã©ã¹ããããäœæããŠãããããããªãã
ããŠããã㧠style="--table-border-width: 5px;"
ãªã©ãä»èšããŠããã®ã§ãäžãäžæ¬¡ã®ããŒãã«ã§æ ç·ã倪ããŸãŸã ã£ããå°ããæåã®äŸã®è¡šããã®ãŸãŸèŒããŠã¿ãã
0,0 | 0,1 | 0,2 | 0,3 | 0,4 | 0,5 | 0,6 | 0,7 |
---|---|---|---|---|---|---|---|
1,0 | 1,1 | 1,2 | 1,3 | 1,4 | 1,5 | ||
2,0 | 2,1 | 2,2 | 2,3 | 2,4 | 2,5 |
0,0 | 0,1 | 0,2 | 0,3 | 0,4 | 0,5 | 0,6 | 0,7 |
---|---|---|---|---|---|---|---|
1,0 | 1,1 | 1,2 | 1,3 | 1,4 | 1,5 | ||
2,0 | 2,1 | 2,2 | 2,3 | 2,4 | 2,5 |
æµç³ã«å€æ°ãäžæžããããŠããŸããããªããšã¯ãªãããããã㯠CSS å€æ°ã¯ã¹ã¿ã€ã«ã®ç¶æ¿ã«ãã£ãŠåç §ã»å®çŸ©ãããã®ã§ããã®å Žåããããã¯èŠçŽ ã®ç¶æ¿é¢ä¿ã«ã¯ãªãã®ã§ãæå³ããªãå€æ°ã®å€æŽã«ã¯è³ããªããè³æ¥µåœããåã®ããšãªã®ã ããåç¯ã«åŒãç¶ããå®éã«ç¢ºèªããŠã¿ãŠçŽåŸã§ãã次第ã§ããã
ã§ã¯ãæåŸã«ãã®ã¹ã¿ã€ã«ãã¡ã€ã«ã玹ä»ããŠããã
table.border { border-color: darkgray; border-style: outset; border-width: var(--table-border-width, 1px); border-collapse: separate; border-spacing: var(--table-border-spacing, 2px); } table.border > :is(thead, tbody, tfoot) > tr > :is(th, td) { border-color: darkgray; border-style: inset; border-width: var(--table-td-border-width, 1px); } table.border_rules-all { border-style: outset; border-width: var(--table-border-width, 1px); border-collapse: collapse; } table.border_rules-all > :is(thead, tbody, tfoot) > tr > :is(th, td) { border-style: solid; border-width: var(--table-td-border-width, 1px); }
äœããSeaMonkey ã§ã¯ã»ã¬ã¯ã¿ :is()
ãåããªãã®ã§å€å°å·¥å€«ãèŠããã®ã ããæéã解決ããåé¡ã ãšæãã®ã§ãã®ãŸãŸã«ããŠããã
å®ã¯ãã®ããŒãžãã®ãã®ã®ã¹ã¿ã€ã«ã®åœ±é¿ã§ãäžäŸã¯ table[border]
ã®æ¹ããã©ãŠã¶ãç¹ã« Firefox ã®æ¢å®ã®èŠæ ãããå€å°ç°ãªã£ãŠãããããã察å¿ããã€ããã 察å¿ãããããã¬ãŒã³ãªç¶æ
ã®ããã¡ãã«è»¢èŒããŠããã
ãã®ïŒã€ã¯ç¬ç«ããŠããããäžã€ã®äŸã§èª¬æã¯äºè¶³ãããšæãã®ã§ã詳ããé ãè¿œã£ãŠèª¬æãããããããè¡šã®äŸãæã¡èŸŒãã®ãé¢åãªã®ã§ Javascript ã§å ·äœçãªèšç®ãããçµæãç®åºãããšããããå§ããã
[åé¡] æ£ \(n\) è§åœ¢ãããªãæ£ \(f\) é¢äœ \(\mathscr{P}\) ã®ãããããã®é ç¹ã«éãŸã蟺ã®åæ° \(m\) ã\(\mathscr{P}\) ã®ãã¹ãŠã®èŸºã®åæ° \(e\)ã\(\mathscr{P}\) ã®ãã¹ãŠã®é ç¹ã®åæ° \(v\) ã«ã¯ä»¥äžã®é¢ä¿ãããã
\[ \frac{nf}{2} = \frac{mv}{2} = e \] \[ v - e + f = 2 \] \[ (n - 2)(m - 2) \lt 4 \]
\((n, m)\) ã® \(2 \lt n, 2 \lt m\) ã«ãããŠåãåŸãçµã¿åããã Javascript 㧠\(n \lt 100, m \lt 100\) ãŸã§æ±ããã
[解çäŸ] 以äžã® Javascript ãæžãã°ãããäžèšã®ç¬¬ïŒåŒã¯ä»ã®åŒããå°ãããããäžèšã® \(f\) ãæ±ããåŒã¯ãã®éçšã§åŸãããã
console.log(`# 2 < n, 2 < m, f = 4*m/(2*n - m*n + 2*m), v = n*f/m, e = n*f/2`); console.log(`ð«,ð,ð,ð£,ð,ð`); for (let n=3; n<100; ++n) for (let m=3; m<100; ++m) if ((n-2)*(m-2) < 4) { const f = 4*m/(2*n - m*n + 2*m); const v = n*f/m; const e = n*f/2; console.log(`æ£${f}é¢äœ,${n},${m},${v},${e},${f}`); }
以äžã§ã¯ console.log
é¢æ°ã®ä»£ããã« document.writeln
é¢æ°ã«æžãæããŠãå®éã«ãã®ããã¥ã¡ã³ãã« pre
ã¿ã°å
ã«æžã蟌ãã§ããããã㯠CSV 圢åŒã§ããããšããããã ããã
ããŠããã® pre
ã¿ã°å
ã®ã³ã¡ã³ãè¡ãåé€ããŠããŸã Javascript ãé©çšããŠã¿ããå
·äœçã«ã¯ãåŸè¿°ã®æœããããäžã§ãremove_comment_BOL_sharp
ã¯ã©ã¹ãã〠pre
ã« CSV 圢åŒãæžãã°ããã
ããŠããã® pre
ã¿ã°å
ã® CSV 圢åŒãããŒãã«ã«çŽããŠããŸã Javascript ãé©çšããŠã¿ããå
·äœçã«ã¯ãåŸè¿°ã®æœããããäžã§ãcsv
ã¯ã©ã¹ãã〠pre
ã« CSV 圢åŒãæžãã°ããã
以äžã®åèæç®ã®è¡šãå³2-6ããæžãããããã§ã¯ãããã°ã©ã ã§ç¢ºèªããããæ£å€é¢äœã¯ãæ£4é¢äœã,ãæ£8é¢äœã,ãæ£20é¢äœã,ãæ£6é¢äœã,ãæ£12é¢äœãã®ïŒçš®é¡ã«éãããšã瀺ããŠããã
åèæç®
- æ¥æ¯ åä¹ (è), å€è§åœ¢ãšå€é¢äœ å³åœ¢ãç¹ããªãäžæè°äžç (ãã«ãŒããã¯ã¹), p.47, 2020/10/22.
ãšããã§ã第ïŒåŒã確èªããŠãããªãã®ã¯æ°æã¡æªãã®ã§å°ããŠãããåèæç®ãšåãã«ãªããã©ããã¯ããããªãã \begin{gather} \frac{nf}{2} = e\implies f = \frac{2e}{n},\\ \frac{mv}{2} = e\implies v = \frac{2e}{m}. \end{gather} 第ïŒåŒã«ããããä»£å ¥ãããšã \begin{gather} \frac{2e}{m} - e + \frac{2e}{n} = 2\\\implies \frac{2en - emn + 2em}{mn} = 2\implies 2en - emn + 2em = 2mn\\\implies e(2n - mn + 2m) = 2mn\implies e\left(4 - (mn - 2n - 2m + 4)\right) = 2mn\implies\\ e\left(4 - (m - 2)(n - 2)\right) = 2mn.\\ \end{gather} \(e\), \(m\), \(n\) ã¯æ£ã§ããã®ã§ã \begin{gather} (n - 2)(m - 2) \lt 4. \end{gather} èŠè¿ããŠã¿ããšåèæç®ãšã¯è¥å¹²ç°ãªãããæ£æçã«å€ããããã§ããªãåãçµæãåŸããããæ¬é¡ã«æ»ããã
ãã®ããã« HTML+Javascript ã§åçã«ããŒãã«ãæ§æãã Javascript ã®äœ¿çšäŸã瀺ãããå€çšãããšãã®ããŒãžã®ããã«ãã©ãŠã¶ããé ãïŒããšèŠåãçºããã®ã§ãçæç©ãã³ããŒã㊠HTML ã«è²Œãä»ããæ¹ããããããããªããäžå¿ãæºåã®æœãæ¹æ³ã説æããŠããã以äžã HTML ãããã«æžããŠãããŠãäžè¿°ã®èª¬æéãã«ããã°ããã
<script defer src="path_to/comment-remover.js" onload=" window.addEventListener('load', function() { selector_children_remove_comment_BOL_char('pre.remove_comment_BOL_sharp'); }); "></script> <script defer src="path_to/table-constructors.js" onload=" window.addEventListener('load', function() { selector_children_convert_csv_to_table('pre.csv'); }); "></script>
æ¬ããŒãžã¯ãããŸã§æè¡å®èšŒãç®çãšããŠããã®ã§ããã®ãŸãŸã«ããŠãããã¡ãªã¿ã«ããã°ãªã â Unicode ã®ã°ãªãã§äŒŒãŠç°ãªããã®ãã§ã¯ãCSV 圢åŒããçžåœåã£ãããŒãã«ãäœæãããããã°ãªã â ã¬ã¬ã·ãŒã³ã³ãã¥ãŒãã£ã³ã°çšã®èšå·ãå¡ãã€ã¶ããå²ã¿çšã®èšå·ãæè¡çšèšå·ãã§ã¯ãJavascript ãã TSV 圢åŒãçæããè¡åã転眮ããäžã§ããŒãã«ãäœæããããããããæè¡ãè©Šã¿ãŠãããèå³ãããæ¹ã¯ HTML ãœãŒã¹ã«ããããšè¯ãã ããã
\(\TeX\), MathJax, \(\KaTeX\) ã«ãããæ°åŠçšè±æ°åèšå·ãäžå¿ã«ããã®äœ¿ããæ¹ããŸãšããŠãããäœããMathJax ã§ã¯ããã€ãåé¡ãæ®ã£ãŠããã
ã°ãªã Unicode \(\TeX\) \TeX åè âš â© \( \) ç©ºçœ ! âš!â© \(!\) ! æå笊/éä¹èšå· " âš"â© \("\) " ããã«ã¯ã©ãŒããŒã·ã§ã³ããŒã¯ # âš#â© \(\#\) \# çªå·èšå·/ã·ã£ãŒã $ âš$â© \(\$\) \$ ãã«é貚èšå· % âš%â© \(\%\) \% ããŒã»ã³ãèšå· & âš&â© \(\&\) \& ã¢ã³ããµã³ã/ã¢ã³ãèšå· ' âš'â© \('\) ' ã¢ãã¹ããã㣠( âš(â© \((\) ( å§ãäžžæ¬åŒ§ ) âš)â© \()\) ) çµããäžžæ¬åŒ§ * âš*â© \(*\) * ã¢ã¹ã¿ãªã¹ã¯ + âš+â© \(+\) + æ£å· , âš,â© \(,\) , ã«ã³ã - âš-â© \(-\) - ãã€ãã³/è² å· . âš.â© \(.\) . ããªãªã/çµæ¢ç¬Š / âš/â© \(/\) / ã¹ã©ãã·ã¥/æç· : âš:â© \(:\) : ã³ãã³ ; âš;â© \(;\) ; ã»ãã³ãã³ < âš<â© \(<\) < ããå°äžçå· = âš=â© \(=\) = çå· > âš>â© \(>\) > ãã倧äžçå· ? âš?â© \(?\) ? çå笊 @ âš@â© \(@\) @ ã¢ããããŒã¯/å䟡èšå· [ âš[â© \([\) [ å§ãè§æ¬åŒ§ \ âš\â© \(\backslash\) \backslash ããã¯ã¹ã©ãã·ã¥/éæç· ] âš]â© \(]\) ] çµããè§æ¬åŒ§ ^ âš^â© \(\hat{}\) \hat{} ãµãŒã«ã ãã¬ãã¯ã¹ã¢ã¯ã»ã³ã ^ âš^â© \(\text{\textasciicircum}\) \text{\textasciicircum} ãµãŒã«ã ãã¬ãã¯ã¹ã¢ã¯ã»ã³ã _ âš_â© \(\_\) \_ ã¢ã³ããŒã¹ã³ã¢ ` âš`â© \(`\) ` ã°ã¬ãŒãã¢ã¯ã»ã³ã { âš{â© \(\{\) \{ å§ãæ³¢æ¬åŒ§ | âš|â© \(|\) | çžŠç· } âš}â© \(\}\) \} çµããæ³¢æ¬åŒ§ ~ âš~â© \(\tilde{}\) \tilde{} ãã«ã ~ âš~â© \(\text{\textasciitilde}\) \text{\textasciitilde} ãã«ã  âšÂ â© \(~\) ~ ããŒãã¬ãŒã¯ã¹ããŒã¹ ¡ âšÂ¡â©   éãæå笊 ¢ âšÂ¢â© \(\cent\) \cent ã»ã³ãé貚èšå· £ âšÂ£â© \(\pounds\) \pounds ãã³ãé貚èšå· € âšÂ€â© \(\currency\) \currency äžç¹å®é貚èšå· Â¥ âšÂ¥â© \(\yen\) \yen åé貚èšå· Š âšÂŠâ© Â Â ç Žæç· Â§ âšÂ§â©   ç¯èšå· © âšÂ©â© \(\copyright\) \copyright èäœæš©è¡šç€ºèšå· ª âšÂªâ©   女æ§åºæ°æšè « âšÂ«â©   å§ãäºéå±±æ¬åŒ§åŒçšèšå· ¬ âšÂ¬â© \(\neg\) \neg åŠå®èšå·  âšÂâ© \(\text{-}\) \text{-} ãœãããã€ã㳠® âšÂ®â© \(\circledR\) \circledR ç»é²åæšèšå· ¯ âšÂ¯â©   ãã¯ã㳠° âšÂ°â© \(\degree\) \degree 床 ± âšÂ±â© \(\pm\) \pm æ£è² å· Â² âšÂ²â© \(^2\) ^2 äžä»ã2 ³ âšÂ³â© \(^3\) ^3 äžä»ã3 ÂŽ âšÂŽâ© \('\) ' ã¢ãã¥ãŒãã¢ã¯ã»ã³ã µ âšÂµâ© \(\mu\) \mu ãã€ã¯ãèšå· ¶ âšÂ¶â©   段èœèšå· · âšÂ·â© \(\cdot\) \cdot äžç¹ ž âšÂžâ©   ã»ãã£ã© ¹ âšÂ¹â© \(^1\) ^1 äžä»ã1 º âšÂºâ©   ç·æ§åºæ°æšè » âšÂ»â©   çµããäºéå±±æ¬åŒ§åŒçšèšå· ÂŒ âšÂŒâ©   4åã®1 Âœ âšÂœâ©   2åã®1 Ÿ âšÂŸâ©   4åã®3 ¿ âšÂ¿â©   éãçå笊 à âšÃâ© \(\times\) \times ä¹ç®èšå· à âšÃâ© \(\text{\O}\) \text{\O} ã©ãã³å€§æåOã«æç· Ã· âšÃ·â© \(\div\) \div é€ç®èšå· Þ âšÃžâ© \(\text{\o}\) \text{\o} ã©ãã³å°æåOã«æç· Ï âšÏâ© \(\Qoppa\) \Qoppa å€ä»£ã®ãªã·ã£å€§æåã³ãã Ï âšÏâ© \(\qoppa\) \qoppa å€ä»£ã®ãªã·ã£å°æåã³ãã â âšââ© Â Â Account Of â âšââ© Â Â Addressed To The Subject â âšââ© \(\mathbb{C}\) \mathbb{C} è€çŽ æ°éå â âšââ© \(^\circ\mathrm{C}\) ^\circ\mathrm{C} Degree Celsius/ææ°åºŠ â âšââ© Â Â Centre Line Symbol â âšâ â© Â Â Care Of â âšââ© Â Â Cada Una â âšââ© \(\Euler\) \Euler Euler Constant/ãªã€ã©ãŒå®æ° â âšââ© \(\scruple\) \scruple Scruple/ã¹ã¯ã«ãŒãã« (åäœ) â âšââ© \(^\circ\mathrm{F}\) ^\circ\mathrm{F} Degree Fahrenheit/è¯æ°åºŠ â âšââ© \(\mathscr{g}\) \mathscr{g} éåå é床 â âšââ© \(\mathscr{H}\) \mathscr{H} ããã«ããã¢ã³ â âšââ© \(\mathfrak{H}\) \mathfrak{H} ãã«ãã«ã空é â âšââ© \(\mathbb{H}\) \mathbb{H} åå æ°éå â âšââ© \(h\) h Planck Constant/ãã©ã³ã¯å®æ° â âšââ© \(\hslash\) \hslash ãã©ã³ã¯å®æ° â ħ âšÄ§â© \(\hbar\) \hbar ãã£ã©ãã¯å®æ° â âšââ© \(\mathscr{I}\) \mathscr{I}  â âšââ© \(\mathfrak{I}\) \mathfrak{I} èéš â âšââ© \(\mathscr{L}\) \mathscr{L} ã©ãã©ã¹å€æèšå· â âšââ© \(\ell\) \ell ãªããã«èšå· â ð âšðâ© \(\mathscr{l}\) \mathscr{l} é·ãèšå· â âšââ© Â Â L B Bar Symbol/å¬èšå· â âšââ© \(\mathbb{N}\) \mathbb{N} èªç¶æ°éå â âšââ© Â Â Numero Sign/ãã³ããŒèšå· â âšââ© Â Â Sound Recording Copyright/é³æ¥œèäœæš©èšå· â âšââ© \(\wp\) \wp Weierstrass ã®æ¥åé¢æ° â âšââ© \(\mathbb{P}\) \mathbb{P} çŽ æ°éå â âšââ© \(\mathbb{Q}\) \mathbb{Q} æçæ°éå â âšââ© \(\mathscr{R}\) \mathscr{R} ãªãŒãã³ç©åèšå· â âšââ© \(\mathfrak{R}\) \mathfrak{R} å®éš â âšââ© \(\mathbb{R}\) \mathbb{R} å®æ°éå â âšââ© Â Â Prescription Take â âšââ© Â Â Response â âšâ â© Â Â Service Mark â¡ âšâ¡â©   Telephone Sign/é»è©±èšå· ⢠âšâ¢â©   Trade Mark Sign/ãã¬ãŒãããŒã¯èšå· ⣠âšâ£â©   Versicle †âšâ€â© \(\mathbb{Z}\) \mathbb{Z} æŽæ°éå ⥠âšâ¥â© \(\Ounce\) \Ounce Ounce Sign/è¬çšãªã³ã¹èšå· ⊠âšâŠâ© \(\Ohm\) \Ohm Ohm Sign/ãªãŒã èšå· ⧠âšâ§â© \(\mho\) \mho Inverted Ohm Sign/éããªãŒã èšå· âš âšâšâ© \(\mathfrak{Z}\) \mathfrak{Z} â© âšâ©â©   Turned Greek Small Letter Iota ⪠âšâªâ©   Kelvin Sign/ã±ã«ãã³èšå· â« âšâ«â© \(\Angstroem\) \Angstroem Angstrom Sign/ãªã³ã°ã¹ãããŒã èšå· ⬠âšâ¬â© \(\mathscr{B}\) \mathscr{B} ãã«ããŒã€å€é åŒ â âšââ© \(\mathfrak{C}\) \mathfrak{C}  ⮠âšâ®â©   Estimated Symbol/e-ããŒã¯ ⯠âšâ¯â© \(\mathscr{e}\) \mathscr{e} ãã€ãã¢æ° â° âšâ°â© \(\mathscr{E}\) \mathscr{E} èµ·é»å â± âšâ±â© \(\mathscr{F}\) \mathscr{F} ããŒãªãšå€æèšå· â² âšâ²â© \(\Finv\) \Finv ã¯ã©ãŠãã£ãŠã¹ã®ãã£ã¬ã³ã â³ âšâ³â© \(\mathscr{M}\) \mathscr{M} è¡å ⎠âšâŽâ© \(\mathscr{o}\) \mathscr{o} ã©ã³ããŠèšæ³ âµ âšâµâ© \(\aleph\) \aleph ã¢ã¬ãèšå· ⶠâšâ¶â© \(\beth\) \beth ãŽã§ãŒãèšå· â· âšâ·â© \(\gimel\) \gimel ã®ã¡ã«èšå· âž âšâžâ© \(\daleth\) \daleth ãã¬ããèšå· â¹ âšâ¹â©   Information Source ⺠âšâºâ©   ⻠âšâ»â©   Facsimile Sign/FAX èšå· ⌠âšâŒâ©   ã®ãªã·ã£é»æ¿å€ªå Ï âœ âšâœâ©   ã®ãªã·ã£é»æ¿å€ªå γ ⟠âšâŸâ©   ã®ãªã·ã£é»æ¿å€ªå Î â¿ âšâ¿â©   ã®ãªã·ã£é»æ¿å€ªå Î â âšâ â© Â Â ã®ãªã·ã£é»æ¿å€ªå Σ â âšâ â© Â Â Â â âšâ â© Â Â Â â âšâ â© Â Â Â â âšâ â© \(\Yup\)   â âšâ â© Â Â ã©ãã³é»æ¿æäœå€ªå D â âšâ â© Â Â ã©ãã³é»æ¿æäœå€ªå d â âšâ â© Â Â ã©ãã³é»æ¿æäœå€ªå e â âšâ â© Â Â ã©ãã³é»æ¿æäœå€ªå i â âšâ â© Â Â ã©ãã³é»æ¿æäœå€ªå j â âšâ â© Â Â Property Line â âšâ â© \(\invamp\)  ç·åœ¢è«çã®ä¹æ³çè«çåèšå· â âšâ â© Â Â Per Sign â âšâ â© Â Â Aktieselskab/ã¹ã«ã³ãã£ããã¢è«žåœã«ãããæ ªåŒäŒç€Ÿ â âšâ â© Â Â ã¯ã©ãŠãã£ãŠã¹ã®å°æåãã£ã¬ã³ã â âšâ â© Â Â ãµããªã¢æåèšå· â âšââ© \(\forall\) \forall å šç§°éåèšå· â âšââ© \(\complement\) \complement å·®éå â âšââ© \(\partial\) \partial å埮åèšå· â âšââ© \(\exists\) \exists ååšéåèšå· â âšââ© \(\nexists\) \nexists åŠå®ååšéåèšå· â âšâ â© \(\emptyset\) \emptyset 空éå â âšââ© \(\Delta\) \Delta ã€ã³ã¯ãªã¡ã³ãèšå· â âšââ© \(\nabla\) \nabla ããã©èšå·
\textasciicircum, \textasciitilde, \(\cent\), \(\pounds\), \(\currency\), \(\copyright\), \(\degree\), \(\O\), \(\o\), \(\Qoppa\), \(\qoppa\), \(\Euler\), \(\scruple\), \(\Ounce\), \(\Ohm\), \(\Angstroem\), \(\Yup\), \(\invamp\) 㯠MathJax ã§æªãµããŒãã
\(\cent\), \(\pounds\), \(\currency\), \(\Qoppa\), \(\qoppa\), \(\Euler\), \(\scruple\), \(\Ounce\), \(\Ohm\), \(\Angstroem\), \(\Yup\), \(\invamp\) 㯠\(\KaTeX\) ã§æªãµããŒãã
\(\TeX\) æ°åŒã³ãã³ããšããŠæäŸãããŠããã°ãªãããä»ããŠãã³ãŒãã§ããµããŒããããŠããããããããã®ãããããŠãããµããŒããããŠããã°ãªãã¯åã®æ¹ã®ã³ãŒããã€ã³ãã«ãã£ãŠãã¢ã«ãã¡ãããäžæãã¯åŸãã®æ¹ã®ã³ãŒããã€ã³ãã«å²ãåœãŠãããŠããããšã§ããã
ãã£ãŠãã¢ã«ãã¡ããããªã©ã®ã³ãŒããã€ã³ããæé ã«äžŠãã§ããããšãåæã«ããã°ã©ãã³ã°ãããšçãç®ã«ããããšã«ãªãã
以äžã«ããŒãåããŸãšããŠããã
玫è²ã§ç€ºãããã®ã¯æ§æ¥ããååšããã°ãªãã§ãUnicode ã§ã¯ããã«å¯Ÿå¿ããã¢ã«ãã¡ããããæ°åŒçšã°ãªãã®ã³ãŒãé åã«å®åãã圢ã§çšæãããŠããã
以äžã«ã®ãªã·ã£æåããŸãšããŠããã
ç¹ã«ã®ãªã·ã£æåã«ã€ããŠã¯ã\(\TeX\) ã³ãã³ããšã®å¯Ÿå¿è¡šããŸãšããŠããã
倧æå \TeX å°æå \TeX è£ é£Ÿç«äœâœ è£ é£Ÿç«äœå€ªåâœ è£ é£Ÿæäœâœ è£ é£Ÿæäœå€ªå✠倪å✠æäœå€ªå✠èªã¿ ãã®ä» \(\Alpha\) \Alpha \(\alpha\) \alpha Î âšÎ⩠α âšÎ±â© ðš âšðšâ© ð âšðâ© ð¢ âšð¢â© ðŒ âšðŒâ© ð âšðâ© ð¶ âšð¶â© ð âšðâ© ð° âšð°â© ð âšðâ© ðª âšðªâ© ã¢ã«ãã¡ â± âšâ±â© É âšÉâ© \(\Beta\) \Beta \(\beta\) \beta Î âšÎ⩠β âšÎ²â© ð© âšð©â© ð âšðâ© ð£ âšð£â© ðœ âšðœâ© ð âšðâ© ð· âšð·â© ð âšðâ© ð± âšð±â© ð âšðâ© ð« âšð«â© ããŒã¿ Ï âšÏâ© \(\Gamma\) \Gamma \(\gamma\) \gamma Î âšÎ⩠γ âšÎ³â© ðª âšðªâ© ð âšðâ© ð€ âšð€â© ðŸ âšðŸâ© ð âšðâ© ðž âšðžâ© ð âšðâ© ð² âšð²â© ð âšðâ© ð¬ âšð¬â© ã¬ã³ã ᎊ âšáŽŠâ© ⟠âšâŸâ© ✠âšâœâ© \(\varGamma\) \varGamma      ð€ âšð€â©  ð âšðâ© Â Â Â ð âšðâ© Â ã  \(\Delta\) \Delta \(\delta\) \delta Î âšÎâ© ÎŽ âšÎŽâ© ð« âšð«â© ð âšð â© ð¥ âšð¥â© ð¿ âšð¿â© ð âšðâ© ð¹ âšð¹â© ð âšðâ© ð³ âšð³â© ð âšðâ© ð âšðâ© ãã«ã¿ Ạâšáºâ© \(\varDelta\) \varDelta      ð¥ âšð¥â©  ð âšðâ© Â Â Â ð âšðâ© Â ã  \(\Epsilon\) \Epsilon \(\varepsilon\) \varepsilon Î âšÎ⩠ε âšÎµâ© ð¬ âšð¬â© ð âšðâ© ðŠ âšðŠâ© ð âšðâ© ð âšð â© ðº âšðºâ© ð âšðâ© ðŽ âšðŽâ© ð âšðâ© ð® âšð®â© ã€ãã·ãã³(èšå·)   \(\epsilon\) \epsilon  ϵ âšÏµâ©  ð âšðâ© Â ð âšðâ© Â ð âšðâ© Â ð âšðâ© Â ð âšðâ© ã€ãã·ãã³ Â \(\Zeta\) \Zeta \(\zeta\) \zeta Î âšÎ⩠ζ âšÎ¶â© ð âšðâ© ð âšðâ© ð§ âšð§â© ð âšðâ© ð¡ âšð¡â© ð» âšð»â© ð âšðâ© ðµ âšðµâ© ð âšðâ© ð¯ âšð¯â© ãŒãŒã¿  \(\Eta\) \Eta \(\eta\) \eta Î âšÎ⩠η âšÎ·â© ð® âšð®â© ð âšðâ© ðš âšðšâ© ð âšðâ© ð¢ âšð¢â© ðŒ âšðŒâ© ð âšðâ© ð¶ âšð¶â© ð âšðâ© ð° âšð°â© ã€ãŒã¿  \(\Theta\) \Theta \(\theta\) \theta ÏŽ âšÏŽâ© Ξ âšÎžâ© ð¹ âšð¹â© ð âšðâ© ð³ âšð³â© ð âšðâ© ð âšðâ© ðœ âšðœâ© ð§ âšð§â© ð· âšð·â© ð¡ âšð¡â© ð± âšð±â© ã·ãŒã¿èšå·  \(\varTheta\) \varTheta \(\vartheta\) \vartheta Î âšÎâ© Ï âšÏâ© ð¯ âšð¯â© ð âšðâ© ð© âšð©â© ð âšðâ© ð âšðâ© ð âšð â© ð âšðâ© ð âšðâ© ð£ âšð£â© ð âšðâ© ã·ãŒã¿  \(\Iota\) \Iota \(\iota\) \iota Î âšÎ⩠ι âšÎ¹â© ð° âšð°â© ð âšðâ© ðª âšðªâ© ð âšðâ© ð€ âšð€â© ðŸ âšðŸâ© ð âšðâ© ðž âšðžâ© ð âšðâ© ð² âšð²â© ã€ãªã¿  \(\Kappa\) \Kappa \(\kappa\) \kappa Î âšÎ⩠κ âšÎºâ© ð± âšð±â© ð âšðâ© ð« âšð«â© ð âšð â© ð¥ âšð¥â© ð¿ âšð¿â© ð âšðâ© ð¹ âšð¹â© ð âšðâ© ð³ âšð³â© ã«ãã   \(\varkappa\) \varkappa  ϰ âšÏ°â©  ð âšðâ© Â ð âšðâ© Â ð âšðâ© Â ð âšðâ© Â ð âšðâ© ã«ããèšå·  \(\Lambda\) \Lambda \(\lambda\) \lambda Î âšÎ⩠λ âšÎ»â© ð² âšð²â© ð âšðâ© ð¬ âšð¬â© ð âšðâ© ðŠ âšðŠâ© ð âšðâ© ð âšð â© ðº âšðºâ© ð âšðâ© ðŽ âšðŽâ© ã©ã ã  \(\varLambda\) \varLambda      ð¬ âšð¬â©  ðŠ âšðŠâ©    ð âšðâ© Â ã  \(\Mu\) \Mu \(\mu\) \mu Î âšÎâ© ÎŒ âšÎŒâ© ð³ âšð³â© ð âšðâ© ð âšðâ© ð âšðâ© ð§ âšð§â© ð âšðâ© ð¡ âšð¡â© ð» âšð»â© ð âšðâ© ðµ âšðµâ© ãã¥ãŒ  \(\Nu\) \Nu \(\nu\) \nu Î âšÎâ© Îœ âšÎœâ© ðŽ âšðŽâ© ð âšðâ© ð® âšð®â© ð âšðâ© ðš âšðšâ© ð âšðâ© ð¢ âšð¢â© ðŒ âšðŒâ© ð âšðâ© ð¶ âšð¶â© ãã¥ãŒ  \(\Xi\) \Xi \(\xi\) \xi Î âšÎ⩠Ο âšÎŸâ© ðµ âšðµâ© ð âšðâ© ð¯ âšð¯â© ð âšðâ© ð© âšð©â© ð âšðâ© ð£ âšð£â© ðœ âšðœâ© ð âšðâ© ð· âšð·â© ã°ã¶ã€  \(\varXi\) \varXi      ð¯ âšð¯â©  ð© âšð©â©    ð âšðâ© ð· âšð·â© ã  \(\Omicron\) \Omicron \(\omicron\) \omicron Î âšÎ⩠ο âšÎ¿â© ð¶ âšð¶â© ð âšðâ© ð° âšð°â© ð âšðâ© ðª âšðªâ© ð âšðâ© ð€ âšð€â© ðŸ âšðŸâ© ð âšðâ© ðž âšðžâ© ãªãã¯ãã³ Â \(\Pi\) \Pi \(\pi\) \pi Î âšÎ â© Ï âšÏâ© ð· âšð·â© ð âšðâ© ð± âšð±â© ð âšðâ© ð« âšð«â© ð âšð â© ð¥ âšð¥â© ð¿ âšð¿â© ð âšðâ© ð¹ âšð¹â© ã〠⿠âšÆ±â© \(\varPi\) \varPi \(\varpi\) \varpi Â Ï âšÏâ© Â ð¡ âšð¡â© ð± âšð±â© ð âšðâ© ð« âšð«â© ð âšðâ© Â ð âšðâ© ð âšðâ© ð âšðâ© ãã€(èšå·)  \(\Rho\) \Rho \(\rho\) \rho Ρ âšÎ¡â© Ï âšÏâ© ðž âšðžâ© ð âšðâ© ð² âšð²â© ð âšðâ© ð¬ âšð¬â© ð âšðâ© ð§ âšð§â© ð âšðâ© ð¡ âšð¡â© ðº âšðºâ© ã㌠  \(\varrho\) \varrho  ϱ âšÏ±â©  ð âšð â© Â ð âšðâ© Â ð âšðâ© Â ð âšðâ© Â ð âšðâ© ããŒèšå·  \(\Sigma\) \Sigma \(\sigma\) \sigma Σ âšÎ£â© Ï âšÏâ© ðº âšðºâ© ð âšðâ© ðŽ âšðŽâ© ð âšðâ© ð® âšð®â© ð âšðâ© ðš âšðšâ© ð âšðâ© ð¢ âšð¢â© ðŒ âšðŒâ© ã·ã°ã â âšÆ±â© \(\varSigma\) \varSigma \(\varsigma\) \varsigma Â Ï âšÏâ© Â ð âšðâ© ðŽ âšðŽâ© ð âšðâ© ð® âšð®â© ð âšðâ© Â ð âšðâ© ð¢ âšð¢â© ð» âšð»â© (ãã¡ã€ãã«)ã·ã°ã  \(\Tau\) \Tau \(\tau\) \tau ΀ âšÎ€â© Ï âšÏâ© ð» âšð»â© ð âšðâ© ðµ âšðµâ© ð âšðâ© ð¯ âšð¯â© ð âšðâ© ð© âšð©â© ð âšðâ© ð£ âšð£â© ðœ âšðœâ© ã¿ãŠ  \(\Upsilon\) \Upsilon \(\upsilon\) \upsilon Î¥ âšÎ¥â© Ï âšÏ â© ðŒ âšðŒâ© ð âšðâ© ð¶ âšð¶â© ð âšðâ© ð° âšð°â© ð âšðâ© ðª âšðªâ© ð âšðâ© ð€ âšð€â© ðŸ âšðŸâ© ãŠãã·ã㳠Ʊ âšÆ±â© Ê âšÆ±â© \(\varUpsilon\) \varUpsilon      ð¶ âšð¶â©  ð° âšð°â©    ð€ âšð€â©  ã  \(\Phi\) \Phi \(\phi\) \phi Ί âšÎŠâ© Ï âšÏâ© ðœ âšðœâ© ð âšðâ© ð· âšð·â© ð âšðâ© ð± âšð±â© ð âšðâ© ð« âšð«â© ð âšð â© ð¥ âšð¥â© ð¿ âšð¿â© ãã¡ã€  \(\varPhi\) \varPhi \(\varphi\) \varphi Â Ï âšÏâ© Â ð âšðâ© ð· âšð·â© ð âšðâ© ð± âšð±â© ð âšðâ© Â ð âšðâ© ð¥ âšð¥â© ð âšðâ© ãã¡ã€(èšå·)  \(\Chi\) \Chi \(\chi\) \chi Χ âšÎ§â© Ï âšÏâ© ðŸ âšðŸâ© ð âšðâ© ðž âšðžâ© ð âšðâ© ð² âšð²â© ð âšðâ© ð¬ âšð¬â© ð âšðâ© ðŠ âšðŠâ© ð âšðâ© ã«ã€  \(\Psi\) \Psi \(\psi\) \psi Κ âšÎšâ© Ï âšÏâ© ð¿ âšð¿â© ð âšðâ© ð¹ âšð¹â© ð âšðâ© ð³ âšð³â© ð âšðâ© ð âšðâ© ð âšðâ© ð§ âšð§â© ð âšðâ© ããµã€ Ꭺ âšáŽªâ© \(\varPsi\) \varPsi      ð¹ âšð¹â©  ð³ âšð³â©    ð§ âšð§â©  ã  \(\Omega\) \Omega \(\omega\) \omega Ω âšÎ©â© Ï âšÏâ© ð âšðâ© ð âšðâ© ðº âšðºâ© ð âšðâ© ðŽ âšðŽâ© ð âšðâ© ð® âšð®â© ð âšðâ© ðš âšðšâ© ð âšðâ© ãªã¡ã¬  \(\varOmega\) \varOmega      ðº âšðºâ©  ðŽ âšðŽâ©    ðš âšðšâ©  ã   \(\nabla\) \nabla  â âšââ© Â ð âšðâ© Â ð» âšð»â©  ðµ âšðµâ©  ð¯ âšð¯â©  ð© âšð©â© ããã© Â \(\Stigma\) \Stigma \(\stigma\) \stigma Ï âšÏâ© Ï âšÏâ© Â Â Â Â Â Â Â Â Â Â ã¹ãã£ã°ã   \(\partial\) \partial  â âšââ© Â ð âšðâ© Â ð âšðâ© Â ð âšðâ© Â ð âšðâ© Â ð âšðâ© ããŒã·ã£ã«  \(\Digamma\) \Digamma \(\digamma\) \digamma Ï âšÏâ© Ï âšÏâ© ð âšðâ© ð âšðâ© Â Â Â Â Â Â Â Â ãã£ã¬ã³ã  \(\pamDigamma\) \pamDigamma \(\pamdigamma\) \pamdigamma Ͷ âšÍ¶â© Í· âšÍ·â©           ãã³ãã£ãªã¢ãã£ã¬ã³ã Â
\mathnormal, \(\Alpha\), \(\Beta\), \(\Epsilon\), \(\Zeta\), \(\Eta\), \(\Iota\), \(\Kappa\), \(\Mu\), \(\Nu\), \(\Omicron\), \(\Rho\), \(\Tau\), \(\Chi\), \(\Stigma\), \(\stigma\), \(\Digamma\), \(\digamma\), \(\pamDigamma\), \(\pamdigamma\), \(\Koppa\), \(\koppa\), \(\Sampi\), \(\sampi\) 㯠MathJax ã§æªãµããŒãã
\(\Stigma\), \(\stigma\), \(\Digamma\), \(\digamma\), \(\pamDigamma\), \(\pamdigamma\), \(\Koppa\), \(\koppa\), \(\Sampi\), \(\sampi\) 㯠\(\KaTeX\) ã§æªãµããŒãã
\(\Rho, \Digamma, \digamma, x\in \R^n\), \(\UN{d}{f}\)
ã³ã¹ãã®ä¿ããªã³ã¯ã¯äžç·ãããšãããã以å€ã¯ç¡ããšããã
以äžã®ãã¹ãŠã®ãããã¯èŠçŽ ã¯æåãµã€ãºã«å¿ããåäžããè¡ãã
pre
th | th | th |
---|---|---|
th | td | td |
th | td | td |
blockquote
æ¬é ã®å³äžã«é®åº§ããŠãã Gear Bar ãšåä»ãããããŒãžã®ã«ã¹ã¿ãã€ãºçšãããã¢ãããšãªã¢ããããã¯ããŒã¯ã¬ãããå©çšããŠä»»æã®ãµã€ãã«äžæçã«å°å ¥ããããšãå¯èœã ã以äžã®ããã¯ããŒã¯ã¬ãããããã¯ããŒã¯ããŠãããã奜ããªãµã€ãã§ãã®ããã¯ããŒã¯ãéžã¹ã°ããã以äžã¯ã²ãšãŸãããã©ã³ããµã€ãºèšå®ã®ã¿ãå°å ¥ããŠããã
bookmarklet: fontsize in Gear BarãŸã éçºæ®µéã ããçŸæç¹ã§ã®ã³ãŒãã貌ã£ãŠããããã¿ã³ãäžæã衚瀺ãããªããµã€ãããŸãŸããã®ã§èŠèª¿æ»ã§ãããã¹ã¿ã€ã«ã® z-index
å±æ§ããšæã£ãããããã§ããªãããã
javascript:(() => { let tiptools_style = document.getElementById('tiptools_style'); if (!tiptools_style) { tiptools_style = document.createElement('style'); tiptools_style.id = 'tiptools_style'; tiptools_style.innerHTML = ` .tooltip .tip { display: none; position: absolute; width: 5em; padding: .25em; margin: .25em; background: white; border: none; border-radius: .25em; box-shadow: .25em .25em .25em rgba(0, 0, 0, .25); z-index: 32761; pointer-events: none; } :not([style*="text-align: right;"]) .tooltip .tip { transform: translate(0%, 50%); } [style*="text-align: right;"] .tooltip .tip { transform: translate(-100%, 50%); } .tooltip:hover .tip { display: inline-block; } `; document.head.insertBefore(tiptools_style, document.head.firstChild); } let gear_div = document.getElementById('gear_bar'); if (!gear_div) { gear_div = document.createElement('div'); gear_div.id = 'gear_bar'; gear_div.setAttribute('style', ` position: fixed; right: .125em; top: .125em; background-color: #ffffff77; border-radius: .25em; text-align: right; z-index: 32760; `); gear_div.innerHTML = ` <span hidden id="â">â</span> <button class="tooltip" onclick=" for (let element of this.parentNode.childNodes) { if (element == this) continue; element.hidden = !element.hidden; }"><span class="tip" style="width: 16em;">⊠Open/Close Customization</span>â</button> `; document.body.insertBefore(gear_div, document.body.firstChild); } let fontsize_label = document.getElementById('gear_fontsize'); if (!fontsize_label) { fontsize_label = document.createElement('label'); fontsize_label.id = 'gear_fontsize'; fontsize_label.innerHTML = ` font size: <select onchange=" document.body.style.fontSize = event.target.value; "> <option value="43.75%" > 7pt (43.75%)</option> <option value="50.00%" > 8pt (50.00%)</option> <option value="56.25%" > 9pt (56.25%)</option> <option value="62.50%" > 10pt (62.50%)</option> <option value="68.75%" > 11pt (68.75%)</option> <option value="75.00%" > 12pt (75.00%)</option> <option value="81.25%" > 13pt (81.25%)</option> <option value="87.50%" > 14pt (87.50%)</option> <option value="100.00%" selected > 16pt (100.00%)</option> <option value="106.25%" > 17pt (106.25%)</option> <option value="131.25%" > 21pt (131.25%)</option> <option value="156.25%" > 25pt (156.25%)</option> <option value="187.50%" > 30pt (187.50%)</option> <option value="225.00%" > 36pt (225.00%)</option> <option value="268.75%" > 43pt (268.75%)</option> <option value="325.00%" > 52pt (325.00%)</option> <option value="387.50%" > 62pt (387.50%)</option> <option value="462.50%" > 74pt (462.50%)</option> <option value="556.25%" > 89pt (556.25%)</option> <option value="668.75%" > 107pt (668.75%)</option> <option value="800.00%" > 128pt (800.00%)</option> <option value="962.50%" > 154pt (962.50%)</option> </select> `; const sibling = document.getElementById('â'); if (sibling) { if (sibling.hidden) fontsize_label.hidden = true; sibling.parentNode.insertBefore(fontsize_label, sibling); } } })();
äžå¿ãèšèšæ¹éã説æããŠãããšãã¹ã¿ã€ã«ã·ãŒãã Javascript ã³ãŒãã¯ãäžã€äžã€ã¯ååãªã®ã§æ¬ãµã€ããããã¡ã€ã«ãèªã¿èŸŒãã§ãããã®ã ããå©çšè ã¯ãããã£ãé¡ã®æè¡ã¯å€éšãµã€ãã«äŸåããæå ã«ç¢ºä¿ããæ¹ãå®å¿ã ãããšèããããã¯ããŒã¯ã¬ããã«æ¥µååã蟌ãæ¹éãšããããããµã€ãºãè¶ ãããããªããå€éšèªã¿èŸŒã¿ã«ããã®ããããããããªãã
ä»ã®ããããé¡ã®æè¡ããã®åœ¢æ ã§æäŸããããã«ããŠãGear Bar ããããŸããŸãªé ã®èª¿æŽãèªãµã€ãåãã®ãããã°çã«æçšãªããã¯ããŒã¯ã¬ãããéæãäœåŠãã«èŒããŠããäºå®ã§ããããã®ãµã€ãã¯ãããŸã§æè¡å®èšŒçšããŒãžã§ããã®ã§ããããããŸãšãŸã£ãããŒãžã«èªå°ããã
ã¹ã¿ã€ã«ã·ãŒãã®èª¿æŽã«ã¯ãªã»ãã¿ CSS ã掻çšããããšãããããCDN(Content Delivery Network) ã§é åžãããŠãããã®ããéžãã§ãé²èŠ§äžã®ããŒãžã«é©çšããããšãã§ãããéçºæã®èª¿æ»ã®ããã«ã以äžã®ããã¯ããŒã¯ã¬ããã掻çšãããšããã
bookmarklet: CDN resetter CSS in Gear Barãã®é ã®å³äžã® Gear Bar ã§ã¯ãµã€ãææã®ãªã»ãã¿ããã©ãŠã¶ã®æ¢å®å€ãªã©ãæäŸãããŠããããæµç³ã«ããããããã¯ããŒã¯ã¬ããã«æèŒããã®ã¯å€§ããªãäžè©±ã ãšæãã®ã§ãåèªã§å·¥å€«ããŠé ããããããã§ã CDN ã®ãªã»ãã¿ãæ°è»œã«è©Šããã®ã¯æçšã ãããã¡ãªã¿ã«ãdestyle CSS ã§åãã©ãŠã¶ã®æ¢å®ã®ã¹ã¿ã€ã«ããåãé€ãããŸã£ããçŽ ã®æåã䌺ããã®ãèå³æ·±ãã以äžã«ã³ãŒãã玹ä»ããŠããã®ã§ãåèªã§å·¥å€«ããããã®åèã«ããŠé ãããã
javascript:(() => { let tiptools_style = document.getElementById('tiptools_style'); if (!tiptools_style) { tiptools_style = document.createElement('style'); tiptools_style.id = 'tiptools_style'; tiptools_style.innerHTML = ` .tooltip .tip { display: none; position: absolute; width: 5em; padding: .25em; margin: .25em; background: white; border: none; border-radius: .25em; box-shadow: .25em .25em .25em rgba(0, 0, 0, .25); z-index: 32761; pointer-events: none; } :not([style*="text-align: right;"]) .tooltip .tip { transform: translate(0%, 50%); } [style*="text-align: right;"] .tooltip .tip { transform: translate(-100%, 50%); } .tooltip:hover .tip { display: inline-block; } `; document.head.insertBefore(tiptools_style, document.head.firstChild); } let gear_div = document.getElementById('gear_bar'); if (!gear_div) { gear_div = document.createElement('div'); gear_div.id = 'gear_bar'; gear_div.setAttribute('style', ` position: fixed; right: .125em; top: .125em; background-color: #ffffff77; border-radius: .25em; text-align: right; z-index: 32760; `); gear_div.innerHTML = ` <span hidden id="â">â</span> <button class="tooltip" onclick=" for (let element of this.parentNode.childNodes) { if (element == this) continue; element.hidden = !element.hidden; }"><span class="tip" style="width: 16em;">⊠Open/Close Customization</span>â</button> `; document.body.insertBefore(gear_div, document.body.firstChild); } let resetter_label = document.getElementById('gear_cdn_resetter_css'); if (!resetter_label) { resetter_label = document.createElement('label'); resetter_label.id = 'gear_cdn_resetter_css'; resetter_label.innerHTML = ` CDN resetter: <select onchange="(() => {\ const re_resetter_css = /.*\\/(destyle|reset|remedy|reboot|normalize|sanitize)(\\.min)?\\.css/;\ function last_link_resetter_css()\ {\ let rv = null;\ const sels = document.querySelectorAll('link[href]');\ for (let sel of sels)\ if (sel.href.match(re_resetter_css))\ rv = sel;\ return rv;\ }\ function remove_link_resetter_css()\ {\ const sels = document.querySelectorAll('link[href]');\ for (let sel of sels)\ if (sel.href.match(re_resetter_css))\ sel.parentNode.removeChild(sel);\ }\ function insert_link_resetter_css(url)\ {\ remove_link_resetter_css();\ const css_element = document.createElement('link');\ document.head.insertBefore(css_element, document.head.firstChild);\ css_element.id = 'link-resetter-css';\ css_element.rel = 'stylesheet';\ css_element.setAttribute('href', url);\ }\ insert_link_resetter_css(event.target.value);\ })();\ "> <option value="nothing" selected >none</option> <option value="https://cdn.jsdelivr.net/npm/destyle.css@2.0.2/destyle.css" >destyle</option> <option value="https://cdn.jsdelivr.net/npm/modern-css-reset@1.4.0/dist/reset.min.css" >reset</option> <option value="https://cdn.jsdelivr.net/npm/cssremedy@0.1.0-beta.2/css/remedy.css" >remedy</option> <option value="https://cdn.jsdelivr.net/npm/bootstrap-reboot@4.5.4/reboot.css" >bootstrap-reboot</option> <option value="https://cdn.jsdelivr.net/npm/normalize.css@8.0.1/normalize.css" >normalize</option> <option value="https://cdn.jsdelivr.net/npm/sanitize.css@12.0.1/sanitize.min.css" >sanitize</option> </select> `; const sibling = document.getElementById('â'); if (sibling) { if (sibling.hidden) resetter_label.hidden = true; sibling.parentNode.insertBefore(resetter_label, sibling); } } })();
HTML å·çéäžã§ç¯ã® ID ã¯æžããŠãããããããžã®ãªã³ã¯ãç®æ¬¡ãªã©ããŸã çšæãããŠããªã段éãããããã®éã«ããã®ç¯ã®æ ¡æ£ãªã©ã«æã£åãæ©ããªã³ã¯ã®ããã® URL ãäœæã§ããã°äŸ¿å©ã§ããããã€ãHTML å·ç㧠ID ã¯æžããŠããã®ã«é©åãªãªã³ã¯ããå¿ãããŸãŸæŸçœ®ããŠããŸã£ãŠããããšã«æ°ã¥ãããå¹æãããã以äžã®ããã¯ããŒã¯ã¬ããã掻çšãããšãããã§ãç« ããŒã¯ãæŒããšé©çšããã
bookmarklet: insert missing section links in Gear Barããã¯ããŒã¯ã¬ãããšããªããšæååã®ãšã¹ã±ãŒãã®ãã¹ããªã©ãã¡ãã£ãšå°æããå Žé¢ã« Javascript ã§ããçŽé¢ããããŸã èåãã§ããããšã¯äºæ¿ããã ããããä»çµã¿äžãå ã®ã³ãŒããšããªã被ããããã®ãŸãŸã³ãŒããèŒããŠããã
javascript:(() => { let tiptools_style = document.getElementById('tiptools_style'); if (!tiptools_style) { tiptools_style = document.createElement('style'); tiptools_style.id = 'tiptools_style'; tiptools_style.innerHTML = ` .tooltip .tip { display: none; position: absolute; width: 5em; padding: .25em; margin: .25em; background: white; border: none; border-radius: .25em; box-shadow: .25em .25em .25em rgba(0, 0, 0, .25); z-index: 32761; pointer-events: none; } :not([style*="text-align: right;"]) .tooltip .tip { transform: translate(0%, 50%); } [style*="text-align: right;"] .tooltip .tip { transform: translate(-100%, 50%); } .tooltip:hover .tip { display: inline-block; } `; document.head.insertBefore(tiptools_style, document.head.firstChild); } let gear_div = document.getElementById('gear_bar'); if (!gear_div) { gear_div = document.createElement('div'); gear_div.id = 'gear_bar'; gear_div.setAttribute('style', ` position: fixed; right: .125em; top: .125em; background-color: #ffffff77; border-radius: .25em; text-align: right; z-index: 32760; `); gear_div.innerHTML = ` <span hidden id="â">â</span> <button class="tooltip" onclick=" for (let element of this.parentNode.childNodes) { if (element == this) continue; element.hidden = !element.hidden; }"><span class="tip" style="width: 16em;">⊠Open/Close Customization</span>â</button> `; document.body.insertBefore(gear_div, document.body.firstChild); } let section_links_button = document.getElementById('gear_insert_missing_section_links'); if (!section_links_button) { section_links_button = document.createElement('button'); section_links_button.id = 'gear_insert_missing_section_links'; section_links_button.setAttribute('class', 'tooltip'); section_links_button.setAttribute('onclick', ` (() => { for (let e of document.body.querySelectorAll('h2[id],h3[id],h4[id],h5[id],h6')) { let a = e.parentNode.querySelector(\`a[href='#\${e.id}']\`); if (!a) { a = document.createElement('a'); a.setAttribute('href', \`#\${e.id}\`); a.setAttribute('style', "vertical-align: top;"); a.innerHTML = 'â»'; e.insertBefore(a, e.firstChild); console.log(a.outerHTML); } } })(); `); section_links_button.innerHTML = ` <span class="tip" style="width: 16em;">⊠Insert Missing Section Links</span>§ `; const sibling = document.getElementById('â'); if (sibling) { if (sibling.hidden) section_links_button.hidden = true; sibling.parentNode.insertBefore(section_links_button, sibling); } } })();
å ã®ãšäŒŒãŠããããHTML å·çéäžã ãç« ç«ãŠãããããããã¿ãã段éããããç« ç¯é ç®ã®çªå·ãæ¿å ¥ããããšã§é©åã«èŠåºãããªãããŠãããã確èªã§ããã以äžã®ããã¯ããŒã¯ã¬ããã掻çšãããšããããð®ãæ¬ããŒã¯ãæŒããšé©çšããããã¡ããæŒããŠããå ã®ã§ãç« ããŒã¯ãæŒããšãããã©ã¡ãã§ãããã
bookmarklet: insert header marks in Gear BarããããŸã èåãã§ããããšã¯äºæ¿ããã ããããä»çµã¿äžãå
ã®ã³ãŒããšããªã被ããããã®ãŸãŸã³ãŒããèŒããŠããã(2021/06/25 æŽæ°) TeX 颚㫠asterisk
ã¯ã©ã¹ã«å±ããã¿ã°ã«ã€ããŠã¯ç« ç¯çªå·ãä»èšããªãèšèšã«ããŸããã
javascript:(() => { let tiptools_style = document.getElementById('tiptools_style'); if (!tiptools_style) { tiptools_style = document.createElement('style'); tiptools_style.id = 'tiptools_style'; tiptools_style.innerHTML = ` .tooltip .tip { display: none; position: absolute; width: 5em; padding: .25em; margin: .25em; background: white; border: none; border-radius: .25em; box-shadow: .25em .25em .25em rgba(0, 0, 0, .25); z-index: 32761; pointer-events: none; } :not([style*="text-align: right;"]) .tooltip .tip { transform: translate(0%, 50%); } [style*="text-align: right;"] .tooltip .tip { transform: translate(-100%, 50%); } .tooltip:hover .tip { display: inline-block; } `; document.head.insertBefore(tiptools_style, document.head.firstChild); } let gear_div = document.getElementById('gear_bar'); if (!gear_div) { gear_div = document.createElement('div'); gear_div.id = 'gear_bar'; gear_div.setAttribute('style', ` position: fixed; right: .125em; top: .125em; background-color: #ffffff77; border-radius: .25em; text-align: right; z-index: 32760; `); gear_div.innerHTML = ` <span hidden id="â">â</span> <button class="tooltip" onclick=" for (let element of this.parentNode.childNodes) { if (element == this) continue; element.hidden = !element.hidden; }"><span class="tip" style="width: 16em;">⊠Open/Close Customization</span>â</button> `; document.body.insertBefore(gear_div, document.body.firstChild); } let header_marks_button = document.getElementById('gear_insert_header_marks'); if (!header_marks_button) { header_marks_button = document.createElement('button'); header_marks_button.id = 'gear_insert_header_marks'; header_marks_button.setAttribute('class', 'tooltip'); header_marks_button.setAttribute('onclick', ` (() => { const r = /^H([1-6])/; function document_trace_header(p, H) { const header_mark_class_name = '_header_mark'; H.tags.push(p.tagName); if (p.tagName) { const m = p.tagName.match(r); if (m && !p.classList.contains('asterisk')) { const h = parseInt(m[1]); if (h < H.previous_h) for (let i = h + 1; i <= 6; ++i) H.numbers[i - 1] = 0; ++H.numbers[h - 1]; let numbering = ''; for (let i = 1 + H.h_delta; i<=h; ++i) numbering += \`_\${H.numbers[i - 1]}\`; let mark; switch (h + H.h_delta) { case 1: mark = \`ð®\${H.numbers[0 - H.h_delta]}\`; break; case 2: mark = \`ð \${H.numbers[1 - H.h_delta]}\`; break; case 3: mark = \`§\${H.numbers[2 - H.h_delta]}\`; break; case 4: mark = \`§\${H.numbers[2 - H.h_delta]}.\${H.numbers[3 - H.h_delta]}\`; break; case 5: mark = \`§\${H.numbers[2 - H.h_delta]}.\${H.numbers[3 - H.h_delta]}.\${H.numbers[4 - H.h_delta]}\`; break; case 6: mark = \`¶\${H.numbers[5 - H.h_delta]}\`; break; case 7: mark = \`¶\${H.numbers[5 - H.h_delta]}.\${H.numbers[6 - H.h_delta]}\`; break; } if (!p.id) p.id = numbering; let q = p.querySelector(\`.\${header_mark_class_name}\`); if (q) q.parentNode.removeChild(q); if (H.h_delta < h) p.innerHTML = \`<span class='\${header_mark_class_name}'>\${mark} </span>\${p.innerHTML}\`; console.log(p.outerHTML); H.previous_h = h; } } for (let e of p.childNodes) document_trace_header(e, H); H.tags.pop(); } let H = { h_delta: 1, previous_h: 0, tags: [], numbers: (new Array(6)).fill(0), }; document_trace_header(document.body, H); })(); `); header_marks_button.innerHTML = ` <span class="tip" style="width: 16em;">⊠Insert Header Marks & Ids</span>ð® `; const sibling = document.getElementById('â'); if (sibling) { if (sibling.hidden) header_marks_button.hidden = true; sibling.parentNode.insertBefore(header_marks_button, sibling); } } })();
é©åã«èŠåºãããªãããŠããããããã«ç¢ºèªããããã«ãç®æ¬¡ã匷åŒã«æ¿å ¥ããŠããŸããã以äžã®ããã¯ããŒã¯ã¬ããã掻çšã§ããã
bookmarklet: insert contents in Gear Barå°ã èåããªç®æã¯ä¿®æ£ããããä»æã®èåããªç®æã¯ãŸã ä¿®æ£ããŠããªãã®ã§äºæ¿ããã ããããä»çµã¿äžãå ã®ã³ãŒããšããªã被ããããã®ãŸãŸã³ãŒããèŒããŠããã
javascript:(() => { let tiptools_style = document.getElementById('tiptools_style'); if (!tiptools_style) { tiptools_style = document.createElement('style'); tiptools_style.id = 'tiptools_style'; tiptools_style.innerHTML = ` .tooltip .tip { display: none; position: absolute; width: 5em; padding: .25em; margin: .25em; background: white; border: none; border-radius: .25em; box-shadow: .25em .25em .25em rgba(0, 0, 0, .25); z-index: 32761; pointer-events: none; } :not([style*="text-align: right;"]) .tooltip .tip { transform: translate(0%, 50%); } [style*="text-align: right;"] .tooltip .tip { transform: translate(-100%, 50%); } .tooltip:hover .tip { display: inline-block; } `; document.head.insertBefore(tiptools_style, document.head.firstChild); } let gear_div = document.getElementById('gear_bar'); if (!gear_div) { gear_div = document.createElement('div'); gear_div.id = 'gear_bar'; gear_div.setAttribute('style', ` position: fixed; right: .125em; top: .125em; background-color: #ffffff77; border-radius: .25em; text-align: right; z-index: 32760; `); gear_div.innerHTML = ` <span hidden id="â">â</span> <button class="tooltip" onclick=" for (let element of this.parentNode.childNodes) { if (element == this) continue; element.hidden = !element.hidden; }"><span class="tip" style="width: 16em;">⊠Open/Close Customization</span>â</button> `; document.body.insertBefore(gear_div, document.body.firstChild); } let contents_button = document.getElementById('gear_insert_contents'); if (!contents_button) { contents_button = document.createElement('button'); contents_button.id = 'gear_insert_contents'; contents_button.setAttribute('class', 'tooltip'); contents_button.addEventListener('click', ()=>{ /* make html contents */ function make_html_contents(h_lambda, h_upsilon, h_delta) { const r = /^H([1-6])/; let html = ''; function document_trace_header(p, H) { const header_mark_class_name = '_header_mark'; H.tags.push(p.tagName); if (p.tagName) { const m = p.tagName.match(r); if (m && !p.classList.contains('asterisk')) { let li_html = ''; const h = parseInt(m[1]); if (h < H.previous_h) for (let i = h + 1; i <= 6; ++i) H.numbers[i - 1] = 0; ++H.numbers[h - 1]; let numbering = ''; for (let i = 1 + H.h_delta; i<=h; ++i) numbering += `_${H.numbers[i - 1]}`; let mark; switch (h + H.h_delta) { case 1: mark = `ð®${H.numbers[0 - H.h_delta]}`; break; case 2: mark = `ð ${H.numbers[1 - H.h_delta]}`; break; case 3: mark = `§${H.numbers[2 - H.h_delta]}`; break; case 4: mark = `§${H.numbers[2 - H.h_delta]}.${H.numbers[3 - H.h_delta]}`; break; case 5: mark = `§${H.numbers[2 - H.h_delta]}.${H.numbers[3 - H.h_delta]}.${H.numbers[4 - H.h_delta]}`; break; case 6: mark = `¶${H.numbers[5 - H.h_delta]}`; break; case 7: mark = `¶${H.numbers[5 - H.h_delta]}.${H.numbers[6 - H.h_delta]}`; break; } if (!p.id) p.id = numbering; let q = p.querySelector(`.${header_mark_class_name}`); if (q) q.parentNode.removeChild(q); if (!(h < h_lambda) && !(h_upsilon < h)) { if (H.previous_h != h) li_html += (H.previous_h < h ? /*' '.repeat(Math.max(0, H.previous_h - H.h_lambda)) + */'<ul>'.repeat(h - H.previous_h) : /*' '.repeat(Math.max(0, h - H.h_lambda)) + */'</ul>'.repeat(H.previous_h - h)) + '\n'; if (!(h < H.h_lambda)) li_html += /*' '.repeat(h - H.h_lambda) + */`<li>${mark} <a href="#${p.id}">${p.innerHTML}</a></li>\n`; if (H.h_delta < h) p.innerHTML = `<span class='${header_mark_class_name}'>${mark} </span>${p.innerHTML}`; //console.log(p.outerHTML); H.previous_h = h; } html += li_html; } } for (let e of p.childNodes) document_trace_header(e, H); H.tags.pop(); } let H = { h_lambda: h_lambda ? h_lambda : 1, h_upsilon: h_upsilon, h_delta: h_delta ? h_delta : 1, previous_h: /*0*/h_lambda - 1, tags: [], numbers: (new Array(6)).fill(0), }; document_trace_header(document.body, H); html += `${('</ul>'.repeat(H.previous_h - (H.h_lambda - 1)))}\n`; return html; } function document_insert_contents() { const id = '_contents'; let e; if ((e = document.getElementById(id))) { e.parentNode.removeChild(e); return; } const html = `\ <aside id='${id}' style="clear: right; float: right; padding-left: .5em;"> <h2 class="contents asterisk">Contents</h2> <div> ${make_html_contents(2, 4)} </div> </aside> ` if (!false && (e = document.body.querySelector('h2'))) e.outerHTML = html + e.outerHTML; else if ((e = document.body.querySelector('h1'))) e.outerHTML = e.outerHTML + html; } document_insert_contents(); }); contents_button.innerHTML = ` <span class="tip" style="width: 16em;">⊠Insert Contents</span>â± `; const sibling = document.getElementById('â'); if (sibling) { if (sibling.hidden) contents_button.hidden = true; sibling.parentNode.insertBefore(contents_button, sibling); } } })();
ãµã€ãã®ããŒãžã¿ã€ãã«ã£ãŠã©ããã£ãŠã³ããŒããã°ããã®ã§ãããããã¿ã€ãã«ãããæååãéžæããããšããŠãç»åã ã£ãããªã³ã¯ã§éžæãã«ããã£ãããå€ãããã®ããã¯ããŒã¯ã¬ããã¯å°å ¥ããã° Gear Bar ã«ãã®ããŒãžã®ã¿ã€ãã«ãš H1 ã¿ã°æååãã³ããŒçšã«èŒããŠãããã
bookmarklet: page title to copy in Gear Barããã¯ãªããªã䟿å©ã ãä»çµã¿äžãå ã®ã³ãŒããšããªã被ããããã®ãŸãŸã³ãŒããèŒããŠããã
javascript:(() => { let tiptools_style = document.getElementById('tiptools_style'); if (!tiptools_style) { tiptools_style = document.createElement('style'); tiptools_style.id = 'tiptools_style'; tiptools_style.innerHTML = ` .tooltip .tip { display: none; position: absolute; width: 5em; padding: .25em; margin: .25em; background: white; border: none; border-radius: .25em; box-shadow: .25em .25em .25em rgba(0, 0, 0, .25); z-index: 32761; pointer-events: none; } :not([style*="text-align: right;"]) .tooltip .tip { transform: translate(0%, 50%); } [style*="text-align: right;"] .tooltip .tip { transform: translate(-100%, 50%); } .tooltip:hover .tip { display: inline-block; } `; document.head.insertBefore(tiptools_style, document.head.firstChild); } let gear_div = document.getElementById('gear_bar'); if (!gear_div) { gear_div = document.createElement('div'); gear_div.id = 'gear_bar'; gear_div.setAttribute('style', ` position: fixed; right: .125em; top: .125em; background-color: #ffffff77; border-radius: .25em; text-align: right; z-index: 32760; `); gear_div.innerHTML = ` <span hidden id="â">â</span> <button class="tooltip" onclick=" for (let element of this.parentNode.childNodes) { if (element == this) continue; element.hidden = !element.hidden; }"><span class="tip" style="width: 16em;">⊠Open/Close Customization</span>â</button> `; document.body.insertBefore(gear_div, document.body.firstChild); } let text_set_to_copy_span = document.getElementById('gear_text_set_to_copy'); if (!text_set_to_copy_span) { text_set_to_copy_span = document.createElement('span'); text_set_to_copy_span.id = 'gear_text_set_to_copy'; text_set_to_copy_span.setAttribute('style', 'font-size: small;'); text_set_to_copy_span.innerHTML = ` <label> title: <input type="text" id="gear_text_set_to_copy_page_title"/></label> <label> h1: <input type="text" id="gear_text_set_to_copy_page_h1"/></label> `; const sibling = document.getElementById('â'); if (sibling) { if (sibling.hidden) text_set_to_copy_span.hidden = true; sibling.parentNode.insertBefore(text_set_to_copy_span, sibling); } } document.querySelector('#gear_text_set_to_copy_page_title').value = document.title; if (document.querySelector('h1')) document.querySelector('#gear_text_set_to_copy_page_h1').value = document.querySelector('h1').innerText; })();