4chan-x/css/style.css
Nicolas Stepien 70bb35950f Add Index/Reply Navigation.
This code is so old.
Are these features even used?
2013-02-17 21:49:32 +01:00

594 lines
10 KiB
CSS
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/* General */
.dialog {
box-shadow: 0 1px 2px rgba(0, 0, 0, .15);
border: 1px solid;
display: block;
padding: 0;
}
.field {
border: 1px solid #CCC;
-moz-box-sizing: border-box;
box-sizing: border-box;
color: #333;
font: 13px sans-serif;
margin: 0;
padding: 2px 4px 3px;
outline: none;
-webkit-transition: color .25s, border-color .25s;
transition: color .25s, border-color .25s;
}
.field::-moz-placeholder,
.field:hover::-moz-placeholder {
color: #AAA !important;
}
.field:hover {
border-color: #999;
}
.field:hover, .field:focus {
color: #000;
}
.move {
cursor: move;
}
label {
cursor: pointer;
}
a[href="javascript:;"] {
text-decoration: none;
}
.warning {
color: red;
}
/* 4chan style fixes */
.opContainer, .op {
display: block !important;
}
.post {
overflow: visible !important;
}
[hidden] {
display: none !important;
}
/* fixed, z-index */
#qp, #ihover,
#updater, #thread-stats,
#navlinks, #header,
#qr, #watcher {
position: fixed;
}
#notifications {
z-index: 80;
}
#qp, #ihover {
z-index: 70;
}
#menu {
z-index: 60;
}
#navlinks, #updater, #thread-stats {
z-index: 50;
}
#header:hover {
z-index: 40;
}
#qr {
z-index: 30;
}
#header {
z-index: 20;
}
#watcher {
z-index: 10;
}
/* Header */
.fourchan-x body {
margin-top: 2em;
}
.fourchan-x #boardNavDesktop,
.fourchan-x #navtopright,
.fourchan-x #boardNavDesktopFoot {
display: none !important;
}
#header {
top: 0;
right: 0;
left: 0;
}
#header-bar {
border-width: 0 0 1px;
padding: 4px;
position: relative;
-webkit-transition: all .1s ease-in-out;
transition: all .1s ease-in-out;
}
#header-bar.autohide:not(:hover) {
box-shadow: none;
margin-bottom: -1em;
-webkit-transform: translateY(-100%);
transform: translateY(-100%);
-webkit-transition: all .75s .25s ease-in-out;
transition: all .75s .25s ease-in-out;
}
#toggle-header-bar {
cursor: n-resize;
left: 0;
right: 0;
bottom: -8px;
height: 10px;
position: absolute;
}
#header-bar.autohide #toggle-header-bar {
cursor: s-resize;
}
#header-bar a {
text-decoration: none;
padding: 1px;
}
#header-bar > .menu-button {
float: right;
padding: 0;
}
/* Notifications */
#notifications {
text-align: center;
}
.notification {
color: #FFF;
font-weight: 700;
text-shadow: 0 1px 2px rgba(0, 0, 0, .5);
box-shadow: 0 1px 2px rgba(0, 0, 0, .15);
border-radius: 2px;
margin: 1px auto;
width: 500px;
max-width: 100%;
position: relative;
-webkit-transition: all .25s ease-in-out;
transition: all .25s ease-in-out;
}
.notification.error {
background-color: hsla(0, 100%, 40%, .9);
}
.notification.warning {
background-color: hsla(36, 100%, 40%, .9);
}
.notification.info {
background-color: hsla(200, 100%, 40%, .9);
}
.notification.success {
background-color: hsla(104, 100%, 40%, .9);
}
.notification > .close {
color: white;
padding: 4px 6px;
top: 0;
right: 0;
position: absolute;
}
.message {
-moz-box-sizing: border-box;
box-sizing: border-box;
padding: 4px 20px;
max-height: 200px;
width: 100%;
overflow: auto;
}
/* Thread Updater */
#updater:not(:hover) {
background: none;
border: none;
box-shadow: none;
}
#updater > .move {
padding: 0 3px;
}
#updater > div:last-child {
text-align: center;
}
#updater input[type=number] {
width: 4em;
}
#updater:not(:hover) > div:not(.move) {
display: none;
}
.new {
color: limegreen;
}
/* Thread Watcher */
#watcher {
padding-bottom: 3px;
position: absolute;
overflow: hidden;
white-space: nowrap;
}
#watcher:not(:hover) {
max-height: 220px;
}
#watcher > .move {
padding-top: 3px;
}
#watcher > div {
max-width: 200px;
overflow: hidden;
padding-left: 3px;
padding-right: 3px;
text-overflow: ellipsis;
}
#watcher a {
text-decoration: none;
}
/* Thread Stats */
#thread-stats {
background: none;
border: none;
box-shadow: none;
}
/* Quote */
.deadlink {
text-decoration: none !important;
}
.backlink.deadlink, .quotelink.deadlink {
text-decoration: underline !important;
}
.inlined {
opacity: .5;
}
#qp input, .forwarded {
display: none;
}
.quotelink.forwardlink,
.backlink.forwardlink {
text-decoration: none;
border-bottom: 1px dashed;
}
.filtered {
text-decoration: underline line-through;
}
.inline {
border: 1px solid;
display: table;
margin: 2px 0;
}
.inline .post {
border: 0 !important;
background-color: transparent !important;
display: table !important;
margin: 0 !important;
padding: 1px 2px !important;
}
#qp {
padding: 2px 2px 5px;
}
#qp .post {
border: none;
margin: 0;
padding: 0;
}
#qp img {
max-height: 300px;
max-width: 500px;
}
.qphl {
box-shadow: 0 0 0 2px rgba(216, 94, 49, .7);
}
/* File */
.fileText:hover .fntrunc,
.fileText:not(:hover) .fnfull {
display: none;
}
:root.fit-width .full-image {
max-width: 100%;
}
:root.gecko.fit-width .full-image,
:root.presto.fit-width .full-image {
width: 100%;
}
.expanded-image > .op > .file::after {
content: '';
clear: both;
display: table;
}
#ihover {
-moz-box-sizing: border-box;
box-sizing: border-box;
max-height: 100%;
max-width: 75%;
padding-bottom: 16px;
}
/* Index/Reply Navigation */
#navlinks {
font-size: 16px;
top: 25px;
right: 10px;
}
/* Filter */
.opContainer.filter-highlight {
box-shadow: inset 5px 0 rgba(255, 0, 0, .5);
}
.opContainer.filter-highlight.qphl {
box-shadow: inset 5px 0 rgba(255, 0, 0, .5),
0 0 0 2px rgba(216, 94, 49, .7);
}
.filter-highlight > .reply {
box-shadow: -5px 0 rgba(255, 0, 0, .5);
}
.filter-highlight > .reply.qphl {
box-shadow: -5px 0 rgba(255, 0, 0, .5),
0 0 0 2px rgba(216, 94, 49, .7);
}
/* Thread & Reply Hiding */
.hide-thread-button,
.hide-reply-button {
float: left;
margin-right: 2px;
}
.stub ~ .sideArrows,
.stub ~ .hide-reply-button,
.stub ~ .post {
display: none !important;
}
/* QR */
.hide-original-post-form #postForm,
.hide-original-post-form .postingMode {
display: none;
}
#qr > .move {
min-width: 300px;
overflow: hidden;
-moz-box-sizing: border-box;
box-sizing: border-box;
padding: 0 2px;
}
#qr > .move > span {
float: right;
}
#autohide, .close, #qr select, #dump, .remove, .captchaimg, #qr div.warning {
cursor: pointer;
}
#qr select {
margin: 0;
}
#dump {
background: -webkit-linear-gradient(#EEE, #CCC);
background: linear-gradient(#EEE, #CCC);
border: 1px solid #CCC;
margin: 0;
padding: 2px 4px 3px;
outline: none;
width: 30px;
}
.gecko #dump {
padding: 1px 0 2px;
width: 10%;
}
#dump:hover, #dump:focus {
background: -webkit-linear-gradient(#FFF, #DDD);
background: linear-gradient(#FFF, #DDD);
}
#dump:active, .dump #dump:not(:hover):not(:focus) {
background: -webkit-linear-gradient(#CCC, #DDD);
background: linear-gradient(#CCC, #DDD);
}
#qr:not(.dump) #replies, .dump > form > label {
display: none;
}
#replies {
display: block;
height: 100px;
position: relative;
-webkit-user-select: none;
-moz-user-select: none;
-o-user-select: none;
user-select: none;
}
#replies > div {
counter-reset: qrpreviews;
top: 0; right: 0; bottom: 0; left: 0;
margin: 0; padding: 0;
overflow: hidden;
position: absolute;
white-space: pre;
}
#replies > div:hover {
bottom: -10px;
overflow-x: auto;
z-index: 1;
}
.qrpreview {
background-position: 50% 20%;
background-size: cover;
border: 1px solid #808080;
color: #FFF !important;
font-size: 12px;
-moz-box-sizing: border-box;
box-sizing: border-box;
cursor: move;
display: inline-block;
height: 90px; width: 90px;
margin: 5px; padding: 2px;
opacity: .6;
outline: none;
overflow: hidden;
position: relative;
text-shadow: 0 1px 1px #000;
-webkit-transition: opacity .25s ease-in-out;
transition: opacity .25s ease-in-out;
vertical-align: top;
}
.qrpreview:hover, .qrpreview:focus {
opacity: .9;
color: #FFF !important;
}
.qrpreview#selected {
opacity: 1;
}
.qrpreview::before {
counter-increment: qrpreviews;
content: counter(qrpreviews);
font-weight: 700;
text-shadow: 0 0 3px #000, 0 0 5px #000;
position: absolute;
top: 3px; right: 3px;
}
.qrpreview.drag {
border-color: red;
border-style: dashed;
}
.qrpreview.over {
border-color: #FFF;
border-style: dashed;
}
.remove {
color: #E00 !important;
font-weight: 700;
padding: 3px;
}
.remove:hover::after {
content: ' Remove';
}
.qrpreview > label {
background: rgba(0, 0, 0, .5);
right: 0; bottom: 0; left: 0;
position: absolute;
text-align: center;
}
.qrpreview > label > input {
margin: 1px 0;
vertical-align: bottom;
}
#addReply {
font-size: 3.5em;
line-height: 100px;
}
.persona {
display: -webkit-flex;
display: flex;
}
.persona .field {
-webkit-flex: 1;
flex: 1;
}
.gecko .persona .field {
width: 30%;
}
#qr textarea.field {
display: -webkit-box;
min-height: 160px;
min-width: 100%;
}
#qr.captcha textarea.field {
min-height: 120px;
}
.textarea {
position: relative;
}
#charCount {
color: #000;
background: hsla(0, 0%, 100%, .5);
font-size: 8pt;
margin: 1px;
position: absolute;
bottom: 0;
right: 0;
pointer-events: none;
}
#charCount.warning {
color: red;
}
.captchainput > .field {
min-width: 100%;
}
.captchaimg {
background: #FFF;
outline: 1px solid #CCC;
outline-offset: -1px;
text-align: center;
}
.captchaimg > img {
display: block;
height: 57px;
width: 300px;
}
#qr [type=file] {
margin: 1px 0;
width: 70%;
}
#qr [type=submit] {
margin: 1px 0;
padding: 1px; /* not Gecko */
width: 30%;
}
.gecko #qr [type=submit] {
padding: 0 1px; /* Gecko does not respect box-sizing: border-box */
}
/* Menu */
.menu-button {
display: inline-block;
}
.menu-button > span {
border-top: 6px solid;
border-right: 4px solid transparent;
border-left: 4px solid transparent;
display: inline-block;
margin: 2px;
vertical-align: middle;
}
#menu {
border-bottom: 0;
display: -webkit-flex;
display: flex;
-webkit-flex-flow: column nowrap;
flex-flow: column nowrap;
position: absolute;
outline: none;
}
.entry {
cursor: pointer;
outline: none;
padding: 3px 7px;
position: relative;
text-decoration: none;
white-space: nowrap;
}
.entry.has-submenu {
padding-right: 20px;
}
.has-submenu::after {
content: '';
border-left: 6px solid;
border-top: 4px solid transparent;
border-bottom: 4px solid transparent;
display: inline-block;
margin: 4px;
position: absolute;
right: 3px;
}
.has-submenu:not(.focused) > .submenu {
display: none;
}
.submenu {
border-bottom: 0;
display: -webkit-flex;
display: flex;
-webkit-flex-flow: column nowrap;
flex-flow: column nowrap;
position: absolute;
margin: -1px 0;
}
.entry input {
margin: 0;
}