frold
10.Октябрь.2019 08:31:35
1
Я ищу пользователей, которые использовали функцию «Встраивание списка тем Discourse на другой сайт ».
Поделитесь, пожалуйста, используемым вами CSS для изменения стиля по умолчанию.
На данный момент я протестировал только список, но хотел бы изменить его оформление — считаю эту функцию очень мощной
С уважением,
frold
15.Октябрь.2019 12:42:03
2
Правда? Никто не использует функцию встраивания и не создал собственный стиль?
Если это так, не стесняйтесь поделиться в этой теме.
jord8on
(Jordan)
31.Август.2020 20:00:28
3
Я бы тоже с удовольствием увидел несколько примеров этого!
Я немного поэкспериментировал и добавил строку поиска в начало списка тем. Теперь мой встраиваемый элемент выглядит так:
Код формы поиска, стилей и списка тем:
Сводка
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<script src="https://adams-discourse.com/javascripts/embed-topics.js"></script>
<style>
* {
box-sizing: border-box;
}
#form {
position:absolute;
left: 22px;
top:5px;
width:55%;
}
form.example input[type=text] {
padding: 10px;
font-size: 17px;
border: 1px solid grey;
float: left;
width: 80%;
background: #f1f1f1;
}
form.example button {
float: left;
width: 19%;
padding: 10px;
background:#1e825b;
color: white;
font-size: 17px;
border: 1px solid grey;
border-left: none;
cursor: pointer;
}
form.example button:hover {
background: green;
}
form.example::after {
content: "";
clear: both;
display: table;
}
d-topics-list iframe{
position:absolute;
width: 100%!important;
top:-10px;
}
</style>
</head>
<body>
<d-topics-list discourse-url="https://adams-discourse.com" template="complete" category="9" per-page="6" allow-create="true" ></d-topics-list>
<div id="form">
<form class="example" action="https://adams-discourse.com/search?q=" target="_blank">
<input placeholder="Поиск по форуму" aria-label="Поиск по форуму" type="text" id="q" name="q" value="">
<button type="submit"><i class="fa fa-search"></i></button>
</form> </div>
Чтобы получить такую раскладку блоков, вместо grid я использовал flex в встроенных CSS-стилях Discourse.
Сводка
.topics-list {
display: inline-flex;
flex-wrap: wrap;
padding: 8px 8px 0 8px;
margin: 3px 3px 0 0;
.topic-list-item .main-link {
border: 1px solid gray;
margin: 5px;
width: 250px;
height: 90px;
}
.topic-column-wrapper {
flex-direction: column-reverse;
.topic-column.details-column {
width: 100%;
}
.topic-created-at {
padding-left: 0!important;
font-size:13px;
}
.topic-column.featured-image-column .topic-featured-image img {
display:none;
}
}
}
.new-topic-btn {
float: left;
margin: 16px 0 0 58%;
height: 40.5px;;
background:#1e825b;
}
.new-topic-btn:hover {
background: rgb(73, 130, 5);
}
@adamgpope Если я правильно понял, то то, что вы показали здесь (строка поиска, темы и т. д.), встроено на внешний сайт? Если так, то это потрясающе!
Извините за всплытие очень старой темы, но…
Я тоже хотел бы увидеть примеры стилизации встроенного списка тем. У меня он выглядит как мобильная версия на десктопе
как сделать его на всю ширину?
Извините за вопрос новичка
РЕДАКТИРОВАНО:
Отвечая сам себе
TL;DR
следующий код нужно было разместить на странице, куда вложен список:
<style>
d-topics-list iframe{
width: 100%!important;
}
</style>
выглядит отлично и на мобильных устройствах!!
Я разобрался с этим благодаря этой теме
The CSS needs adding to your site, rather than Discourse’s embedded, CSS. So you’d have something like this:
<html>
<head>
<script src="https://jonathan5-discourse.com/javascripts/embed-topics.js">
</script>
<style>
d-topics-list iframe{
width: 100%!important;
}
</style>
</head>
<body>
<d-topics-list discourse-url="https://jonathan5-discourse.com" category="5" per-page="5"></d-topics-list>
</body>
</html>