mirror of
https://github.com/discourse/discourse.git
synced 2024-11-25 05:02:24 +08:00
8a3c02c985
Google is complaining about some mobile crawler layout issues. If a post has tables, they extend outside the viewport. <img height="300" src="https://user-images.githubusercontent.com/33972521/178642976-3d1761ad-d8cb-4c69-92b5-7be799873d5c.png"> This PR fixes that. We constrain the post to the viewport width (already determined from a parent element) and make it possible to scroll instead. There is no visual change here, it should act the same as it does today, but it makes Google happy. This PR also adds a bit of margin to tags in the `/tags` page in the crawler view because Google was complaining about `Clickable elements too close together` <img height="300" src="https://user-images.githubusercontent.com/33972521/178644327-cc3ff795-24f1-4fef-95c9-e4358a5b37bc.png">
279 lines
4.7 KiB
SCSS
279 lines
4.7 KiB
SCSS
// IMPORTANT: This stylesheet needs to work for super old browsers, including those
|
|
// without support for `var()`. Therefore every color definition needs to define a simple
|
|
// value first, as a fallback
|
|
|
|
body.crawler,
|
|
body > noscript {
|
|
font-family: serif;
|
|
a {
|
|
// we want all links to look like links
|
|
color: blue !important;
|
|
color: var(--tertiary) !important;
|
|
text-decoration: underline !important;
|
|
}
|
|
> header {
|
|
// site header
|
|
box-sizing: border-box;
|
|
width: 100%;
|
|
top: 0;
|
|
background-color: #fff;
|
|
background-color: var(--header_background);
|
|
padding: 10px;
|
|
box-shadow: none;
|
|
border-bottom: 1px solid #eee;
|
|
border-bottom: 1px solid var(--header_primary-medium);
|
|
}
|
|
|
|
.header-buttons {
|
|
display: none;
|
|
}
|
|
|
|
// topic list
|
|
|
|
div#main-outlet {
|
|
padding: 10px;
|
|
div.post {
|
|
word-break: break-word;
|
|
img {
|
|
max-width: 100%;
|
|
height: auto;
|
|
}
|
|
}
|
|
}
|
|
|
|
.topic-list {
|
|
table-layout: fixed;
|
|
overflow: hidden;
|
|
margin: 2em 0;
|
|
|
|
thead {
|
|
border-bottom: 1px solid #ddd;
|
|
border-bottom: 1px solid var(--primary_low);
|
|
th {
|
|
padding: 0 0 0.5em;
|
|
}
|
|
th:first-of-type {
|
|
width: 40%;
|
|
}
|
|
@media screen and (min-width: 500px) {
|
|
th {
|
|
&.replies,
|
|
&.views {
|
|
width: 10%;
|
|
}
|
|
}
|
|
th:first-of-type {
|
|
width: 50%;
|
|
}
|
|
th:last-of-type {
|
|
width: 15%;
|
|
}
|
|
}
|
|
}
|
|
|
|
td {
|
|
padding: 10px 0;
|
|
&.posters {
|
|
padding: 10px 20px;
|
|
}
|
|
}
|
|
th:first-of-type {
|
|
padding-left: 0;
|
|
}
|
|
|
|
@media (max-width: 850px) {
|
|
table-layout: auto;
|
|
td {
|
|
word-break: break-all;
|
|
&.posters {
|
|
a:not(:last-of-type) {
|
|
display: none;
|
|
}
|
|
a:last-of-type {
|
|
display: block;
|
|
}
|
|
}
|
|
}
|
|
|
|
td,
|
|
th {
|
|
&.views {
|
|
display: none;
|
|
}
|
|
}
|
|
|
|
.link-top-line {
|
|
a.title {
|
|
padding: 0;
|
|
}
|
|
}
|
|
|
|
.link-bottom-line {
|
|
margin-top: 0.25em;
|
|
}
|
|
}
|
|
|
|
.topic-list-item {
|
|
border-bottom: 1px solid #eee;
|
|
border-bottom: 1px solid var(--primary-low);
|
|
> * {
|
|
padding: 0.75em 0;
|
|
}
|
|
td.main-link {
|
|
padding-right: 1em;
|
|
}
|
|
}
|
|
}
|
|
|
|
.topic-category {
|
|
display: inline;
|
|
}
|
|
|
|
.topic-list-main-link a.title,
|
|
.topic-list .main-link a.title,
|
|
.latest-topic-list-item .main-link a.title {
|
|
padding: 0;
|
|
}
|
|
|
|
.topic-list .link-bottom-line {
|
|
margin-top: 0.25em;
|
|
}
|
|
|
|
// topics
|
|
|
|
div#main-outlet {
|
|
div.post {
|
|
word-break: break-word;
|
|
overflow: auto;
|
|
max-width: 100%;
|
|
img {
|
|
max-width: 100%;
|
|
height: auto;
|
|
}
|
|
}
|
|
}
|
|
|
|
.crawler-post {
|
|
margin-top: 1em;
|
|
margin-bottom: 2em;
|
|
padding-top: 1.5em;
|
|
border-top: 1px solid #eee;
|
|
border-top: 1px solid var(--primary-low);
|
|
}
|
|
|
|
.crawler-post-meta {
|
|
margin-bottom: 1em;
|
|
.creator {
|
|
word-break: break-all;
|
|
a {
|
|
font-weight: bold;
|
|
}
|
|
@include breakpoint(tablet) {
|
|
display: inline-block;
|
|
margin-bottom: 0.25em;
|
|
}
|
|
}
|
|
}
|
|
|
|
.crawler-post-infos {
|
|
color: #666;
|
|
display: inline-block;
|
|
@include breakpoint(tablet, min-width) {
|
|
float: right;
|
|
}
|
|
[itemprop="position"] {
|
|
float: left;
|
|
margin-right: 0.5em;
|
|
}
|
|
}
|
|
|
|
.crawler-linkback-list {
|
|
margin-top: 1em;
|
|
a {
|
|
display: block;
|
|
padding: 0.5em 0;
|
|
border-top: 1px solid #ddd;
|
|
border-top: 1px solid var(--primary-low);
|
|
}
|
|
}
|
|
|
|
.tag-crawler {
|
|
.tag-box {
|
|
margin-bottom: 0.5em;
|
|
}
|
|
}
|
|
|
|
#topic-title {
|
|
> * {
|
|
display: block;
|
|
}
|
|
h1 {
|
|
font-size: 2em;
|
|
margin-bottom: 0.25em;
|
|
}
|
|
}
|
|
|
|
.poll-info {
|
|
// crawler vote count always shows 0
|
|
display: none;
|
|
}
|
|
|
|
pre,
|
|
code,
|
|
blockquote,
|
|
aside.quote .title {
|
|
background: #eee;
|
|
background: var(--primary-low);
|
|
}
|
|
|
|
.md-table {
|
|
tr {
|
|
border: 1px solid #ddd;
|
|
border: 1px solid var(--primary-low);
|
|
}
|
|
th {
|
|
font-weight: bold;
|
|
}
|
|
td,
|
|
th {
|
|
padding: 0.25em;
|
|
border-right: 1px solid #ddd;
|
|
border-right: 1px solid var(--primary-low);
|
|
}
|
|
}
|
|
|
|
// footer
|
|
|
|
footer {
|
|
margin-top: 2em;
|
|
}
|
|
|
|
.noscript-footer-nav {
|
|
margin-top: 4em;
|
|
a {
|
|
margin-right: 0.25em;
|
|
white-space: nowrap;
|
|
}
|
|
}
|
|
|
|
#noscript-footer {
|
|
padding: 0 10px;
|
|
text-align: center;
|
|
}
|
|
|
|
.crawler-nav {
|
|
margin: 1em 0;
|
|
ul {
|
|
margin: 0;
|
|
list-style-type: none;
|
|
}
|
|
li {
|
|
display: inline-block;
|
|
}
|
|
a {
|
|
display: inline-block;
|
|
padding: 0.5em 1em 0.5em 0;
|
|
}
|
|
}
|
|
}
|