/*! * Bootstrap v2.3.2 * * Copyright 2012 Twitter, Inc * Licensed under the Apache License v2.0 * http://www.apache.org/licenses/LICENSE-2.0 * * Designed and built with all the love in the world @twitter by @mdo and @fat. */ :root { --font-family-sans-serif: "Fira Sans", "Source Sans Pro", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; --font-family-mono: "Fira Mono", "Source Code Pro", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; --dark-grey-color: #333; --dark-blue-color: #4F5B93; --medium-blue-color: #7A86B8; --light-blue-color: #E2E4EF; --dark-magenta-color: #793862; --medium-magenta-color: #AE508D; --light-magenta-color: #CF82B1; scroll-padding-top: 4rem; } .clearfix { *zoom: 1; } .clearfix:before, .clearfix:after { display: table; content: ""; line-height: 0; } .clearfix:after { clear: both; } .hide-text { font: 0/0 a; color: transparent; text-shadow: none; background-color: transparent; border: 0; } article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; } audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; } audio:not([controls]) { display: none; } html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; scroll-behavior: smooth; } a { border-bottom:1px solid; } a:focus { outline: thin dotted var(--dark-grey-color); outline-offset: -2px; } a:hover, a:active { outline: 0; } sub, sup { position: relative; font-size: 75%; line-height: 0; vertical-align: baseline; } sup { top: -0.5em; } sub { bottom: -0.25em; } pre { white-space:pre-wrap; } #map_canvas img, .google-maps img { max-width: none; } button::-moz-focus-inner, input::-moz-focus-inner { padding: 0; border: 0; } button, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; cursor: pointer; } label, select, button, input[type="button"], input[type="reset"], input[type="submit"], input[type="radio"], input[type="checkbox"] { cursor: pointer; } input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; } textarea { overflow: auto; vertical-align: top; } @media print { * { text-shadow: none !important; color: #000 !important; background: transparent !important; box-shadow: none !important; } a, a:visited { text-decoration: underline; } a[href]:after { content: " (" attr(href) ")"; } abbr[title]:after { content: " (" attr(title) ")"; } .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; } pre, blockquote { border: 1px solid #999; page-break-inside: avoid; } thead { display: table-header-group; } tr, img { page-break-inside: avoid; } img { max-width: 100% !important; } @page { margin: 0.5cm; } p, h2, h3 { orphans: 3; widows: 3; } h2, h3 { page-break-after: avoid; } } @-ms-viewport { width: device-width; } .hidden { display: none; visibility: hidden; } .visible-phone { display: none !important; } .visible-tablet { display: none !important; } .hidden-desktop { display: none !important; } .visible-desktop { display: inherit !important; } #intro .container { margin:0 auto; display:table; } @media (max-width: 480px) { #intro .download-php { margin: 0; } } @media (min-width: 768px) and (max-width: 979px) { .hidden-desktop { display: inherit !important; } .visible-desktop { display: none !important ; } .visible-tablet { display: inherit !important; } .hidden-tablet { display: none !important; } } @media (max-width: 767px) { .hidden-desktop { display: inherit !important; } .visible-desktop { display: none !important; } .visible-phone { display: inherit !important; } .hidden-phone { display: none !important; } } @media (max-width: 979px) { } @media (min-width: 980px) { } @media (min-width: 1200px) { } @media (min-width: 1500px) { } body, input, textarea { font-family: var(--font-family-sans-serif); font-weight: 400; } code, pre.info, .docs .classsynopsis, .docs .classsynopsis code { font: normal 0.875rem/1.5rem var(--font-family-mono); overflow-x: auto; } p code, li code, dt code, dl code { line-height:1.375rem; } body { font-size: 1rem; line-height: 1.5rem; padding-left:0; padding-right:0; padding-bottom:0; margin:0; } button, input, select, textarea { font-family: inherit; font-size: 100%; margin: 0; } button, input { line-height: normal; } input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; box-sizing: content-box; } h1, h2, h3, h4, h5, h6 { line-height: 3rem; margin:0 0 1.5rem; overflow:hidden; text-rendering: optimizeLegibility; } h1 { font-size: 1.75rem; } h2 { font-size: 1.5rem; } h3 { font-size:1.25rem; } h4 { font-size:1.125rem; } h5, h6 { font-size: 1rem; } p { margin:0 0 1.5rem } ul, ol { margin:0 0 1.5rem 1.5rem; padding:0; } p:empty { margin:0; height:0; display:none; } small { font-size: 0.75rem; } /* use this instead of the obsolete tag */ .big { font-size: 1.2rem; } blockquote { margin: .75rem 0 .75rem .75rem; } abbr { cursor: help; } a { text-decoration:none; } hr { margin:1.5rem 0; border:0; height:0; border-top:.25rem solid #99c; } .page-tools { text-align: right; } .page-tools #changelang-langs { font-size:.75rem; } .contribute { border: 1px solid #888; border-width: 1px 0; margin: 0px -24px 0px -24px; padding: 0 24px 5px 24px; background-color: #E2E2E2; } .contribute .edit-bug a { border: 0; } .contribute h3.title { margin-bottom: 10px; } /** * User notes */ #usernotes { position: relative; margin-top:1.5rem; } #usernotes .count { display:inline-block; vertical-align: text-top; padding: 0.25rem 0.375rem; font-size: 0.75rem; line-height:1rem; } /* Add a note buttons. */ #usernotes .action { display: block; top: 8px; right: 12px; position: absolute; text-align: right; z-index: 1; } #usernotes .foot { text-align: right; margin-bottom: 1rem; } /* Notes themselves. */ #usernotes .note { margin: 1.5rem 0; position: relative; } #usernotes .note .votes { float: left; } #usernotes .note .name { border-bottom: 0; margin-left: 1rem; font-size: 1.125rem; } #usernotes .note .name em { font-style: normal; font-weight: normal; } #usernotes .note .date { float: right; text-align: right; } #usernotes .note .date strong { font-weight: normal; } #usernotes .note .admin { float: left; padding-left: 1rem; } #usernotes .note .admin a { border-bottom: 0; } #usernotes .note .text { padding: .75rem; border-radius:0 0 2px 2px; } /* Vote arrow styles. */ #usernotes .note .votes > div:first-child { float: left; } #usernotes .note .votes > div { float: right; } #usernotes .note .votes a { display: block; height: 0; width: 0; overflow: hidden; margin: 8px 0 0 0; border-left: 8px solid transparent; border-right: 8px solid transparent; border-bottom: 0; } #usernotes .note .votes .usernotes-voteu { border-bottom: 10px solid #999; } #usernotes .note .votes .usernotes-voted { border-top: 10px solid #999; } #usernotes .note .votes .usernotes-voteu:hover, #usernotes .note .votes .usernotes-voteu:focus { border-bottom: 10px solid #015; } #usernotes .note .votes .usernotes-voted:hover, #usernotes .note .votes .usernotes-voted:focus { border-top: 10px solid #015; } #usernotes .note .votes .tally { padding: 0 0.3rem; } /* Definition lists used on eg. the unsub page */ dl dd { margin:0 0 1.5rem; padding:0 1.5rem; } .php8-code.phpcode{ overflow-x: auto; } .phpcode, div.classsynopsis { text-align: left; } div.classsynopsisinfo_comment { margin-top:1.5rem; } .warn { padding: .75rem 1rem; margin: 1.5rem 0 1.5rem 1.5rem; border-top: .1875rem solid; } pre.info { border: 1px solid; margin: 1rem 0.8rem 1.3rem 2rem; } #langform { float: right; } #layout { margin: 0 auto 1.5rem; clear:both; } .layout-menu { padding:.75rem 1.5rem 1.5rem; -moz-box-sizing:border-box; box-sizing:border-box; position: sticky; top: 3rem; max-height: calc(100vh - 3rem); overflow: auto; } #layout-content { padding:1.5rem; -moz-box-sizing:border-box; box-sizing:border-box; } #layout-content:only-child { width:100%; } /** #layout .refentry div[id], #layout .sect1 div[id], #usernotes div.note[id] { padding-top: 52px !important; margin-top: -52px !important; } #layout *[id]:target:before { display:block; content:" "; margin-top:-56px; height:56px; } */ #search-results { margin:10px 40px; } #search-results li { padding:1rem 0; list-style: none; } #search-results li .result { font-size: 1.25rem; } #results_nav_list { margin:0; padding:1rem 0; } #results_nav_list li { list-style: none; display:inline-block; } #results_nav_list li a { padding:.5rem .66rem; } #results_nav_list li.current { font-weight: bolder; } /* Footer styling */ body > footer { clear: both; overflow: auto; line-height:3rem; } body > footer .footer-content { margin: 1.5rem auto 0 ; padding:0 1.5rem; -moz-box-sizing:border-box; box-sizing:border-box; } body > footer ul { margin:0; padding:0; } body > footer .footmenu li { display: inline-block; margin:0 0.75rem; } body > footer a { display:inline-block; border-bottom:0; } body > footer a:hover, body > footer a:focus { color:var(--light-magenta-color); } /* {{{ ElePHPants photo stream */ div.elephpants { margin: auto; overflow: hidden; } div.elephpants div.images { height: 75px; text-align: center; white-space: nowrap; } div.elephpants img { width: 75px; height: 75px; } /* }}} */ /* Standard Tables */ table { border-collapse: collapse; border-spacing: 0; margin:0 0 1.5rem; } table td { vertical-align:top; } table.standard { border-collapse: collapse; border:1px solid #d9d9d9; } table.standard td, table.standard th { border: 1px solid #d9d9d9; } table.standard tr:nth-child(even) td { background-color: #E6E6E6; } table.standard th { font-size: 1.125rem; padding: 20px 10px 5px 10px; color: #666; font-weight: normal; } table.standard td { padding: 5px 10px; vertical-align: middle; } table.standard tr:nth-child(even) td.subr, table.standard tr:nth-child(even) th.subr, table.standard tr td.subr, table.standard tr th.subr, table.standard tr:nth-child(even) td.sub, table.standard tr:nth-child(even) th.sub, table.standard tr td.sub, table.standard tr th.sub { background: #E6E6E6; } table.standard td.subr, table.standard th.subr { text-align: right; } div.informalexample { margin: .75rem 0; } strong, em { text-rendering: optimizeLegibility; } em { font-weight:normal; font-style:italic; } strong { font-weight:bolder; font-style:normal; } article strong, #layout-content ol strong, #layout-content ul strong, #layout-content p strong { font-weight: 500; } .refsect1 code.parameter, strong code, strong pre, pre strong { font-weight: 700; } #toTop { display:none; text-decoration:none; position:fixed; bottom:.75rem; right:.75rem; overflow:hidden; width:43px; height:43px; border:none; z-index:100; } #toTopHover { display:block; overflow:hidden; float:left; } #toTop:active,#toTop:focus { outline:none; } fieldset { margin:0; padding:0; border:0; } .downloads .content-box { margin:0 0 2.25rem; } .content-header .release-state { float: right; opacity: 0.8; } .content-header .changelog { color:#369; } .content-box .md5sum, .content-box .sha256 { display: block; font: normal 0.875rem/1.5rem "Fira Mono", "Source Code Pro", monospace; overflow: hidden; text-overflow: ellipsis; } .content-box .md5sum:before { content: "md5: "; font-family: var(--font-family-sans-serif); } .content-box .sha256:before { content: "sha256: "; font-family: var(--font-family-sans-serif); } .content-box .releasedate { float: right; font-size: 0.9rem; } .content-box pre { background: white; border: solid 1px rgb(214, 214, 214); margin: 0; padding: 0.75rem; overflow: auto; font: normal 0.875rem/1.5rem "Source Code Pro", monospace; } .content-box pre.small { padding: 0; } @media (max-width: 465px) { .content-box h3 .release-state { display: none; } } .title { position:relative; clear:both; } header.title { margin-bottom:1.5rem; } .title a { border:0; } .country { position: relative; padding:0 12px; } .country .countrytitle { margin-left:-12px; margin-right:-12px; } .country .title img { position: absolute; right: 12px; } .refentry .refsect1 { margin-bottom:3rem; } /* {{{ General styles (p, parameters, initializers, ...) */ .refsect1 dt { height:1.5rem; } .docs code.parameter { font-size:1rem; } .docs .classsynopsis code.parameter { font-size:.875rem; } .docs .methodname strong { font-style:normal; font-weight:normal; } /* }}} */ .center { text-align:center; } /* {{{ Warning and notes */ div.tip, div.warning, div.caution, blockquote.note { padding: .75rem; margin: 1.5rem 0; overflow: hidden } blockquote.note strong.note { font-size: 1.125rem; } div.tip strong.tip, div.warning strong.warning, div.caution strong.caution { float: left; margin-right: 0.5rem; font-size: 1.125rem; } blockquote.note p, div.caution p, div.warning p, div.tip p { margin: 1.5rem 0 0; } blockquote.note *:first-child + p, div.caution *:first-child + p, div.warning *:first-child + p, div.tip *:first-child + p, blockquote.note p:first-child, div.caution p:first-child, div.warning p:first-child, div.tip p:first-child { margin: 0; } /* }}} */ .refsect1 .dc-description, .refsect1 .dc-description code, .docs .sect1 .dc-description, .docs .sect1 .dc-description code { font-weight:400; font-size:1rem; font-family:"Fira Mono", "Source Code Pro", monospace; letter-spacing:-.0625rem; word-spacing:-.125rem; margin:0; } /* {{{ Parameter listing */ .docs .refentry .parameters dl { margin-bottom:0; } /* }}} */ /* {{{ Examples */ .docs .example { margin: 1.5rem 0; } .docs .example-contents { margin-bottom:1.5rem; } .docs .example-contents pre { margin:0; overflow-x:auto; white-space:pre; } .docs .example-contents > [class$="code"]:not(.phpcode), .docs .example-contents.screen, .informalexample .literallayout { padding: .75rem; overflow-x: auto; } .docs .example-contents > .phpcode > code { padding: .75rem; } .docs .classsynopsis, .refsect1 .fieldsynopsis, .refsect1 .dc-description, .docs .sect1 .dc-description { padding: .75rem; margin-bottom: 1.5rem; } .phpcode code { display: block; overflow-x: auto; white-space: pre-wrap; } .docs .qandaentry dt .phpcode * { font-weight: normal; } /* }}} */ /* {{{ Tables */ .docs th { text-align: left; } .docs td, .docs th { padding: .25rem .5rem; } .doctable, .segmentedlist { width: 100%; margin:0 0 1.5rem; } .doctable thead tr, .segmentedlist thead tr { border:1px solid; } .doctable tr, .segmentedlist tr { border:1px solid; } /* }}} */ /* {{{ lists */ ul.itemizedlist { list-style-type: circle; } ul.simplelist { list-style-type: disc; } ul.chunklist { list-style-type: disc; } .docs ol { list-style-type: decimal; } dl.qandaentry { border-top: 1px solid; } ul.chunklist_children { margin-top:0; } /* }}} */ .docs div.sect1, .docs div.partintro { position: relative; } .docs .verinfo { font-size: .875rem; margin:0; } .refname .verinfo { line-height:2.875rem; float:right; font-weight:normal; } .docs h1.refname + h1.refname { margin-top:-1.5rem; /* for functions with OO and procedural definitions */ } .docs .refnamediv { position:relative; } .docs .classsynopsis { margin-bottom:1.5rem; } .classsynopsisinfo_comment, .classsynopsis .constructorsynopsis, .classsynopsis .methodsynopsis, .classsynopsis .destructorsynopsis, .classsynopsis .fieldsynopsis { margin-left:1.5rem; } #changelang { border: 0; } /* - Side Menu - */ .docs .layout-menu ul.parent-menu-list { list-style: none; margin: 0; padding: 0; } .docs .layout-menu ul.parent-menu-list > li { margin-top:0; margin-bottom:0; } .docs .layout-menu ul.parent-menu-list > li > a { border:0; font-size: 1.125rem; margin-bottom:0.75rem; display:block; } .docs .layout-menu ul.child-menu-list { margin: 0; } .layout-menu ul.child-menu-list li { list-style-type: none; margin: 0; } .layout-menu ul.child-menu-list li:first-child a { border-top: 1px dotted; margin-top:-1px; } .layout-menu ul.child-menu-list a { font-size: .875rem; border-bottom: 1px dotted; margin-bottom:-1px; display:block; padding-left:.75rem; position:relative; } .layout-menu ul.child-menu-list .current { font-weight: bolder; } #layout-content .current:before { content:"\bb \20"; } .layout-menu ul.child-menu-list a:hover:before, .layout-menu ul.child-menu-list a:focus:before, .layout-menu ul.child-menu-list .current a:before { content:"\bb \20"; position:absolute; left:0; } .docs .sect2 { margin-top: .75rem; } /* Soft-deprecation Notices */ .soft-deprecation-notice h1.title { border: 0; position: absolute; padding: 0; margin:0; top:-22px; left: 0; } div.soft-deprecation-notice { position: relative; margin-top: 50px; border: 1px solid; z-index: 100; } div.soft-deprecation-notice blockquote.sidebar { padding: 10px; margin: 0; border: 0 solid; } #breadcrumbs { -moz-box-sizing:border-box; box-sizing:border-box; padding:.75rem 0; font-size:.875rem; display:none; } #breadcrumbs #breadcrumbs-inner { margin:0 auto; } #breadcrumbs ul { margin:0; padding:0 .5rem 0 1.5rem; overflow: hidden; } #breadcrumbs-inner div { padding:0 1.5rem; } #breadcrumbs li { display:inline-block; } #breadcrumbs li+li:before { padding:0 .5rem 0; content:"\203A"; } #breadcrumbs a:link, #breadcrumbs a:visited { border-width:0; } #breadcrumbs a:hover, #breadcrumbs a:focus { color:var(--light-magenta-color); } #breadcrumbs .next, #breadcrumbs .prev { float:right; } @media (min-width: 768px) { #breadcrumbs { display:block; position: sticky; top: 0px; background: var(--dark-grey-color); z-index: 1; } .doctable thead th { position: sticky; top: 3rem; } #intro .background, aside.tips, .layout-menu { width: 25%; float: left; } #layout-content { float: left; width: 75%; } } @media (min-width: 768px) and (max-width: 979px) { aside.tips { width: 30% !important; } #layout-content:not(:only-child) { width: 70% !important; } } @media (min-width: 1200px) { #intro .container, .navbar__inner, #breadcrumbs-inner, #goto div, #trick div, #layout, body > footer .footer-content { width:1170px; } } @media (min-width: 1500px) { #intro .container, .navbar__inner, #breadcrumbs-inner, #goto div, #trick div, #layout, body > footer .footer-content { width:1440px; } } #mainmenu-toggle-overlay, #mainmenu-toggle { display: none; } @media (max-width:767px) { #intro .download-php { margin: 0 !important; } #mainmenu-toggle-overlay { background: var(--dark-blue-color) url(/images/mobile-menu.png) no-repeat center center; float: right; display: block; height: 32px; width: 34px; margin-top: 10px; margin-right: 10px; border-radius: 5px; } #mainmenu-toggle { height: 32px; width: 34px; line-height: 32px; margin-top: 10px; margin-right: -34px; float: right; border-bottom: 0 none; display: inline-block; opacity: 0; } #mainmenu-toggle:checked + .nav { /* This just has to be big enough to cover whatever's in .nav. */ max-height: 50rem; } #flash-message { margin-top: 0 !important; top: 0; } } @media (min-width:768px) { #intro .container { position:relative; } } @media (max-width: 979px) and (min-width: 768px) { #intro .download-php a.btn-pop { padding-right:.375rem; } } @media (min-width:980px) { } @media (min-width:1200px) { } @media (min-width:1548px) { #layout { padding-right:0; } } #goto { display: none; background-color: var(--dark-grey-color); height: 100%; width: 100%; opacity: 0.9; position: fixed; top: 64px; z-index: 5000; color: #E6E6E6; } #goto .search .results { text-shadow: 0 2px 3px #555; font-size: 2rem; line-height: 1; } #goto .search .results :focus { font-size: 2rem; line-height: 1.2; } #goto .search .text { color: #222; text-shadow: 0 2px 3px #555; font-size: 10rem; line-height: .7; } #trick { display: none; background-color:rgba(51,51,51,.95); height: 100%; width: 100%; position: fixed; top: 64px; z-index: 5000; } #goto div, #trick div { margin: 0 auto; } #trick dt, #trick dl { color: #E6E6E6; } #trick dl { display: inline-block; vertical-align: top; } #trick a { color: #E6E6E6; display: block; border-bottom: none; padding: 1px; } /* {{{ Right-hand sidebar */ aside.tips { -moz-box-sizing:border-box; box-sizing:border-box; padding:1.5rem; color:#ccc; } aside.tips p { margin-top:0; } aside.tips .panel { margin:0 0 1.5rem; } aside.tips .panel .body { font-size:.875rem; margin-top:1.5rem; } aside.tips .panel .headline { display: block; border-bottom:0; line-height: 1.5rem; font-size:1.125rem; color:#E6E6E6; text-rendering: optimizeLegibility; } /* Announcement Area */ aside.tips div.inner { clear:none; border:0; background:inherit; } /* }}} */ /* {{{ Flash message */ #flash-message { height: auto; position: fixed; width: 100%; z-index: 95; text-align: center; box-shadow: 0 0.25rem 0.25rem rgba(0, 0, 0, 0.1); } #flash-message .message { cursor: pointer; text-align: center; position: relative; border-bottom:1px solid; padding:.25rem; } #flash-message .message a { border-style: dotted; font-weight: bolder; } /* }}} */ /* {{{ News */ .newsentry header h2 { margin:0; } .newsentry { margin: 0 0 3rem; position: relative; } .newsentry h2 { font-weight:normal; } .newsentry h2 .release-state { float: right; opacity: 0.8; } .newsentry header time { float:right; line-height:3rem; } .newsentry p { line-height: 1.7rem; } .newsentry .newsimage a { float: right; border: 0; padding: 10px; } .newsentry .newsimage img, .newsItem .newsImage img { max-width: 350px; } /* }}} */ /* {{{ Logo Downloads */ .logo-list ul{ list-style-type: none; } /* }}} */ .caption { font-size: 0.85rem; } /** * Table overlapping fix */ .table { width: 100%; margin: 1% !important; border-spacing: 20px; table-layout: fixed; } td { word-wrap: break-word; } @media only screen and (max-width: 760px), (min-device-width: 768px) and (max-device-width: 1024px) { /* Make table elements block for stacking */ table, thead, tbody, th, td, tr { display: block; } /* Hide the table headers */ thead tr { position: absolute; top: -9999px; left: -9999px; } tr { margin: 0 0 1rem 0; } td { border: none; border-bottom: 1px solid #eee; position: relative; } td:before { left: -.50rem; top: -0.3rem; padding: .25rem .5rem; width: 100%; font-weight: bold; border: none; background-color: #C4C9DF; border-bottom: 1px solid #eee; position: relative; display: block; unicode-bidi: isolate; content: attr(data-label); } }