/***** 全般設定 *****/
/* HTML5 Reset CSS */
main,
header,
nav,
section,
aside,
footer,
figure,
figcaption {
display: block;
}
time {
display: inline;
}
/*@font-face
@font-face {
font-family: normal;
src: local(dummy-undefined);
unicode-range: U+3000-9FFF, U+ff??;
}
@font-face {
font-family: "sans-serif1";
src: local("Tahoma"), local("helvetica"), local("arial");
unicode-range: U+00-024F;
}
@font-face {
font-family: testing;
src: url(__/_UpperEastSide.woff) format("woff");
unicode-range: U+0000-007F;
}
@font-face {
font-family: sans-serif0;
src:
local(IPAexGothic),
local("YuGothic Medium"),
local(YuGo-Medium)
;
}
@font-face {
font-family: serif0;
src:
local("YuMincho Medium"),
local(YuMin-Medium),
local(IPAMonaPMincho Regular),
local(IPAMonaPMincho)
;
}
local(Inconsolata),
*/
@font-face {
font-family: monospace0;
src:
local(Consolas),
local("Lucida Console"),
local(Courier),
local("DejaVu Sans Mono"),
local(Monaco);
}
@font-face {
font-family: sans-serif0;
src: local(Tahoma), local(helvetica), local(arial);
unicode-range: U+0-24F;
}
/*
@font-face {
font-family: sans-serif;
src: local("XXXXX");
unicode-range: U+30A0-30FF;//katakana
font-stretch: ultra-condensed;
}
*/
pre, code, samp {
font-family: monospace0, monospace;
}
/***** 上下 margin *****/
table, pre, header, footer, section, nav {
margin-top: 1em;
margin-bottom: 1em;
}
header, footer, section, nav {
margin-top: 2em;
}
header {
padding-bottom: 1em;
margin-bottom: 2em;
border-bottom: ridge gray 2px;
}
hr { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
/*
header {
padding-bottom: 1em;
border-bottom: 1px solid #CCC;
}
*/
/* 全体
http://www.codestyle.org/css/font-family/sampler-CombinedResults.shtml
"Trebuchet MS"
*/
html {
font-family: serif0, serif;
}
body {
padding: 2em 1em 2em 3em;
margin: 0;
margin-bottom: 50vh;
color: black;
background: white;
line-height: 1.5;
}
b {
font-family: Tahoma, helvetica, arial, sans-serif;
font-family: sans-serif0, sans-serif;
}
/***** 目次 *****/
nav.toc li {
list-style-type: none;
margin-top: 0;
margin-bottom: 0;
}
nav.toc ol {
margin-top: 0.2em;
margin-bottom: 0.5em;
}
nav.toc li > a {
display: block;
border: none;
}
/***** 節 *****/
section {
margin-left: 0;
padding-left: 3px;
border-left: solid #EEE 1px;
}
/* 節見出し */
h1, h2, h3, h4, h5, h6 {
text-align: left;
color: #005A9C;
background: transparent;
}
h1 { font-size: 170%; }
h2 { font-size: 140%; }
h3 { font-size: 125%; }
h4 { font-size: 115%; }
h5 { font-size: 110%; }
h6 { font-size: 105%; }
/* 段落 */
p, div.p {
margin-top: 0.7em;
margin-bottom: 0.7em;
}
p:first-child, div.p:first-child { margin-top: 0;}
p:last-child, div.p:last-child { margin-bottom: 0;}
/* figure */
figcaption {
margin: 0.5em 0;
font-size: 90%;
}
/* details on header */
header > details {
margin-left: 1.5em;
}
header > details > summary {
list-style-position: outside;
}
/***** PRE *****/
pre {
overflow: auto;
margin-left: 2em;
line-height: 1.3;
padding: .5em 1em;
}
dd > pre {
margin-left: 0;
}
/* TODO
pre.ABNF
pre.html-code
pre.css-code
pre.idl
pre.js-code
*/
/* IDL */
pre.idl code {
color: inherit;
}
/* idl defs */
.idl-def::before {
display: block;
margin-top: 2em;
color: gray;
content: '— IDL —';
font-size: small;
}
/* コード内 コメント */
pre .comment {
font-family: serif0, serif;
color: green;
white-space: normal;
}
/***** 表 *****/
table {
border-collapse: collapse;
border-spacing: 0;
}
th, td {
text-align: left;
vertical-align: baseline;
padding-left: 0.4em;
padding-right: 0.4em;
}
/***** リスト *****/
dl, li, ol {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
/* 順序無し */
ul > li {
list-style-type: disc;
}
/* 順序付き */
ol > li {
list-style-type: decimal;
}
/* 定義リスト
dt[id] { font-style: italic; }
*/
dt {
font-weight: bold
}
dt + dd {
margin-top: 0.25em;
}
dd + dt {
margin-top: 0.5em;
}
dd {
margin-bottom: 0.5em;
}
/* hr :not(.top) 省略 */
hr {
display:block;
background:none;
border:none;
padding:0;
margin:2em 0;
height:0;
}
/* 分岐リスト */
ul.switch > li,
ol.switch > li {
list-style-type: "\21AA\00A0";
}
dl.switch > dt {
font-weight: normal;
}
dl.switch > dt::before {
content: "\21AA\00A0";
}
.def-list > dt::before {
content: "• ";
color: gray;
}
/* algorithm heading */
p.algo-head {
margin-top: 1.5em;
border-top: solid #DDD 2px;
}
/***** 行内 *****/
code {
color: #CC3311;
}
/* 変数
font-family: Tahoma, helvetica, arial, sans-serif;...
*/
var {
color:#832;
font-weight: normal;
white-space: nowrap;
}
/* リンク */
/* waiting for support of:
@media (hover) { }
:local-link
text-decoration-*
*/
:link {
text-decoration: none;
border-bottom: 1px solid #999;
color: inherit;
}
:visited {
color: inherit;
}
a:active {
color: #C00;
background: #FFA;
}
a:hover {
background: #FFA;
}
/* 相対リンク */
a[href] {
}
/* 局所リンク
color: #00E; override ':visited', ':active'
*/
a[href^="#"] {
border-bottom: 1px dotted #999;
}
/* 絶対リンク */
a[href^="http:"],
a[href^="https:"] {
text-decoration: none;
border-bottom: 2px solid rgb(153, 204, 153);
color: inherit;
}
/* リンクターゲット */
*:target {
background: #FFA;
}
/* 節/目次は巨大なので見出しをターゲットにする */
nav:target,
section:target {
background: transparent;
outline: none; /* 処理能 対策 */
}
nav:target > *:first-child,
section:target > *:first-child {
background: #FFA;
}
/* 定義語彙 */
dfn {
font-weight: bolder;
font-style: italic;
color: maroon;
}
/*
pre dfn {
color: inherit;
}
*/
/* MUST, SHOULD, MAY etc. */
em.rfc2119 {
border-bottom: dashed 1px gray;
}
/* リテラル */
.literal {
color: gray;
}
/* アルゴリズム */
/* 演算子 */
.op {
color: black;
font-family: sans-serif;
/* font-weight: bold;*/
}
/* 小ブロック */
span.block {
display: block;
margin-left: 2em;
}
/* 整形用 */
.preline {
white-space: pre-line;
}
var {
word-spacing: -40%;
white-space: nowrap;
/* text-transform: capitalize; camelcase が欲しい */
}
/*
REC, CR, WD etc. sideways logo (container)
*/
#_sideways-logo {
display: none;
}
@supports (writing-mode: vertical-rl) {
#_sideways-logo {
writing-mode: vertical-rl; /* ideally, sideways-lr */
display: block;
position: fixed;
top: 0;
left: 0;
white-space: nowrap;
font-family: sans-serif0, sans-serif;
background-color: #159;
color: white;
padding-top: 3em;
padding-bottom: 3em;
pointer-events: none; /* click 透過 */
}
}
/***** 翻訳用 *****/
/* 原文
DO NOT USE
etc. (default display: *not* block)
"display: unset" is not yet widely supported
tr[lang="en"] {
display:collapse
}
*/
*[lang="en"] {
display: none;
background-color: #eef;
color: #444;
line-height: 1.2em;
margin-top:2px;
}
.show-original *[lang="en"] {
display: block;
}
.show-original tr[lang="en"] {
display: table-row;
}
#_site_nav::before {
content: '目次:';
}
#_site_nav {
position: absolute;
top: 0;
left: 3em;
background: #DDD;
margin: 0;
padding: 0.5em 1em;
white-space: nowrap;
overflow: hidden;
max-width: calc(100% - 6em);
}
#_site_nav > li {
display: inline;
}
#_site_nav > li:not(:first-child)::before {
content: " | ";
}
#_site_nav > li:first-child::before {
}
/* 翻訳に関するメタ情報 */
.trans-meta {
font-size: small;
border: double #BB3333 6px;
padding: 0.5em 1em;
margin-bottom: 1em;
}
/* 訳注 .trans-note a */
.trans-note {
color: #005522;
background: #F2FDF3; /*#E9FBE9;*/
font-style: normal;
font-weight: normal;
}
p.trans-note {
margin-left: 2em;
}
/* 参照文献 日本語訳*/
.trans-ja-refs a {
margin-right: 0.5em;
background: #EFE;
}
/***** 付帯機能用 *****/
@media screen {
/* 逆参照パネル */
*[data-cycling],
section[id] > h1,
section[id] > h2,
section[id] > h3,
section[id] > h4,
section[id] > h5,
dfn[id], dt[id] {
cursor: pointer;
}
#_dfnPanel {
display: inline;
/*
http://www.w3.org/TR/CSS2/visudet.html#abs-non-replaced-width
http://www.w3.org/TR/CSS2/visudet.html#abs-non-replaced-height
top, left ... を指定しなければ( auto )親に対し相対的な位置( top は static position )
*/
position: absolute;
margin-top: 2em;
z-index: 10;
height: auto;
min-width: 18em;
max-width: 70vw;
padding: 0.5em 0 0.5em 0.75em ;
font: small sans-serif;
background: #EEDFFF;
color: black;
border: outset 0.2em;
text-indent: 0; /* dl.switch */
}
#_dfnPanel > ul {
max-height: 45vh;
overflow: auto;
}
/*
#_dfnPanel input[type="button"] {
display: none;
}
#_dfnPanel._fixed input[type="button"] {
display: inline;
}
*/
/* クリック後の状態 */
#_dfnPanel._fixed {
position: fixed;
bottom: 2.5em;
right: 2em;
}
#_dfnPanel > *:first-child {
font-weight: bold;
white-space: pre-wrap;
}
/*
#_dfnPanel > *:first-child::after {
content: " の参照元:";
}
*/
#_dfnPanel * {
margin: 0; padding: 0;
}
#_dfnPanel ul.empty::before {
content: "なし";
color: gray;
font-style: italic;
}
#_dfnPanel li {
list-style-type: none;
line-height: 1.1em;
white-space: pre-line;
}
#_dfnPanel li > a {
border: outset 2px #CCF;
padding: 2px;
display: inline-block;
min-width: 1.5em;
text-align: center;
margin-left: 1px;
}
#_dfnPanel li > a:first-child {
display: inline-block;
vertical-align: top;
white-space: nowrap;
overflow: hidden;
max-width: 16em;
text-overflow: ellipsis;
}
.highlight {
outline: solid red 1px;
}
/* 索引 パネル */
#_index_table {
position: fixed;
z-index: 5;
margin: 0; padding: 0;
top: 0; right: 0; bottom: 0;
width: 8.5em;
background-color: #EEDFFF;
}
#_index_table:hover {
width: 16em;
}
#_index_table > button {
width: 100%;
}
#_index_table > div {
position: absolute;
top: 2em; right: 0; bottom: 0; left:0;
overflow: auto;
padding-left: 0.5em;
}
#_index_table > div > * {
display: block;
white-space:nowrap;
}
#_index_table > div > *.code {
font-family: monospace0, monospace;
color: #CC3311;/* orangered;*/
}
/* 表示制御パネル */
#_view_control {
position: fixed;
z-index: 3;
bottom: 0;
left: 0;
right: 0;
font-size: small;
padding: 0;
margin: 0;
white-space: nowrap;
outline: solid transparent 1px;
background: transparent;
}
#_view_control._hoverd,
#_view_control:hover {
outline-color: black;
background: #CCDDFF;
}
#_view_control > * {
visibility: hidden;
padding: 0;
}
#_view_control._hoverd > *,
#_view_control:hover > * {
visibility: visible;
}
#_view_control::before {
content: "切替";
display: inline-block;
background-color: #CCDDFF;
padding: 3px;
margin: 0;
outline: solid black 1px;
}
#_view_control._hoverd::before,
#_view_control:hover::before {
outline: none;
}
/* 日本語訳リンク */
#_ja_link {
font-family: serif0, serif;
background: #FF8;
color: green;
font-weight: normal;
}
/* 原文の同じ箇所を指すリンク */
#_dfnPanel ._additional {
margin-left:1em;
}
/* 内容生成 */
body::before {
display: block;
content: '読み込み/生成中…この表示が消えない場合はどこかでエラーが生じています';
color: red;
}
body._expanded::before {
content: none;
}
/* 動作テスト用 */
._test {
background: #EFE;
color: green;
border: ridge green 2px;
padding: 0.5em;
}
/* 目次メニュー化*/
/* waiting for @media (hover) { } support... */
/* 現在表示中の節 */
._intersecting {
background: #DDD;
}
body.side-menu {
margin-right: 8em;
}
body.side-menu nav.toc {
position: fixed;
z-index: 2;
margin: 0; padding: 0;
padding-left: 0.5em;
top: 0; right: 0; bottom: 0;
width: 8em;
background-color: #EFE;
overflow: auto;
}
body.side-menu nav.toc:hover {
width: auto;
min-width: 8em;
max-width: 40%;
z-index: 4;
}
body.side-menu nav.toc > h2 {
font-size: 1em;
white-space: pre;
}
body.side-menu nav.toc ol,
body.side-menu nav.toc li {
margin-left: 0;
padding-left: 0;
}
body.side-menu nav.toc > ol {
white-space: pre;
white-space: nowrap;
margin: 0;
padding: 0;
}
}
.fingerprinting {
display: inline-block;
width: 46px;
height: 64px;
float: right;
background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC4AAABABAMAAACXaVguAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAYUExURQYGBv7+/nV1dV1dXdfX15ycnP7+/goKCql9u0kAAAAIdFJOU//+Av73/nmPODB2PgAAAmBJREFUOMttlM9u2zAMxunZWa5WLOfcGYV7VeBiZyvLA9hL9wAdBuwa5JLX3/eRkuOmIxDE+oniP1GU7v8iy9eLQG6f+EVMHrhk+fKBq/YwBJHva/4EWkbnnP/l9n+3mdPlxmVp5Jr4ZY2dpw8x9ZLrCcfe8BHEONRnHlcpnKuNQ71yXJkcXAtDosG4EF07DOfAuODgK/lFihpaKj/0QNiSU50OUpA4MJXgT1K1Go8JgjqMAn6ROKpjdwpI2iOXSfkmmRk1HMY10m8bW6wylgIH5n0nPUmxpKVBFL6Tb84xXa+sxG+mt9/yTk0Ng5WGyaJBdOTcb8VqxwXdHSXC3kHVNXymgs+90Lyqx1R8SZzmJitpc1jxWipv93UG8IudmuWkFWYAi1Xik8wTy+z18qHV4m9Pa3GsrA6vzAPxV8ZzINzVwhUrXut/DRu0eucTi+fZDwS7hTMkRhSZz50zbrpmSarEtWGZGa17bbIdr0Erk69+1I+d5uW0KaPVU1tpJzH11Gh/Qf0UR/LCGmpjWfBOC9xXk3p/skA3ehScFXeBXXzQJqQL1+F+eZRq50E0xoAEyFkBJHOatJd5d7MnZzZNfhPQZpnJfe4fsTuDC+VsPOdHPrkmvWPwZwZd3ptfg7a+tVIZf3OJd7pMB5q0fwR/X4qVCorm+gn+bHZjwsxK31dv1bWNRpMQchrSRzSc+Hqh3oi+XxryIT+jV5rSOdDH1YYlZ/PkjzpkNQdrvK3xPrqVILY8r3o/Lzio+jL3ypieVxqhch+T5WCurx/nZJbreq7eHvAyh1905/Z5bj/IPx0ff4X4mS7KAAAAAElFTkSuQmCC")
no-repeat;
}
/*@media screen*/
/***** 印刷用 *****/
@media print {
._test,
#_dfnPanel,
#_view_control,
._additional {
/* see common.js*/
display: none;
}
pre, table {
page-break-inside: avoid;
}
pre {
white-space: pre-wrap;
}
h1, h2, h3, h4, h5, h6 {
page-break-after: avoid;
}
}
/* W3C logo image
http://www.w3.org/Icons/w3c_home
float: right;
*/
#_W3C {
display: inline-block;
float: right;
color: transparent;
width: 90px;
height: 60px;
background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPHN2ZwoJdmVyc2lvbj0iMS4xIgoJeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgoJdmlld0JveD0iLTEzIC05IDE4MCAxMjAiCj4KPCEtLSAwIDAgMTU0IDEwMyAtLT4KCjxyZWN0Cgl4PSItMTMiIHk9Ii05IiByeD0iMTAiIHJ5PSIxMCIKCXdpZHRoPSIxODAiIGhlaWdodD0iMTIwIgoJZmlsbD0iIzAwNUE5QyIKCXN0cm9rZT0ibm9uZSIKLz4KCjwhLS1XMy0tPgo8cGF0aAoJZmlsbD0ibm9uZSIKCXN0cm9rZT0id2hpdGUiCglzdHJva2Utd2lkdGg9IjkiCglkPSIKTTUsMTIgbDE5LjIsNjQgbDE0LjEsLTQ3Ck0zMy41LDEyIGwxOS4yLDY0IGwxOS4yLC02NApNNzAsMTguNSBoMjggbC0xNywyOSB2MwpNODAsNDYgYzMsMCAxOSwwIDE5LDIwCmMwLDUgLTIsMTkgLTE1LDE5CmMtMiwwIC0xMCwwIC0xNSwtMTIKIiAvPgo8cGF0aCBmaWxsPSJub25lIiBzdHJva2U9IiMwMDVBOUMiIHN0cm9rZS13aWR0aD0iNCIKCWQ9IgpNMCwxMiBoMTA1LjUgdjEwCk0wLDkyIGgxMjAKIiAvPgoKPCEtLUMtLT4KPHBhdGgKCWZpbGw9IndoaXRlIgoJc3Ryb2tlPSJub25lIgoJdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIsLTUpc2NhbGUoMC44KSIKCWQ9IgptIDE4MC45NywyMy44OCAxLjk5LDEyLjA5IC03LjA0LDEzLjQ3CkMgMTYwLjAyLDIxLjY0IDEzOC4wNCw0OC42OSAxNDMuMzcsNzkuMDggMTM1Ljc5LDYzLjY2IDEzOS4wNiw0NC4wMCAxNDYuMDgsMzMuNDIgMTUyLjk3LDIzLjA0IDE2NS4wOSwyMS4yMiAxNzQuMDQsMzcuNzEgegpNIDE4MS44NCw5Mi4yOQpjIC0xMi4xMiwyMi41NSAtMzMuMzgsMjQuNjMgLTQ3LjAzLC0xLjc4IDcuOTgsMjkuNjcgMzMuMTcsNDAuMDUgNDguODIsMTEuMTIgeiIgLz4KPHRleHQKCWZpbGw9IndoaXRlIgoJc3Ryb2tlPSJub25lIgoJdGV4dC1hbmNob3I9Im1pZGRsZSIKCXRyYW5zZm9ybT0idHJhbnNsYXRlKDE1MCwyMikiCglmb250LXNpemU9IjE0Igo+wq48L3RleHQ+Cgo8L3N2Zz4K") no-repeat;
}
/* 媒体対応 */
@media screen and (max-width: 45em) {
body {
padding: 1em 0.5em 1em 1em;
}
#_sideways-logo {
font-size: 0.5em;
}
}
/*
.trans-note, .note, .example, .warning, aside {
display: none;
}
*/