Данная тема призвана помочь в решении специфических и актуальных задач для Вашего форума с помощью css методов
Дополнения к текущей теме: Интересные решения для форумов
Единый форум поддержки |
Привет, Гость! Войдите или зарегистрируйтесь.
Вы здесь » Единый форум поддержки » Новые возможности форумов » CSS трюки
Данная тема призвана помочь в решении специфических и актуальных задач для Вашего форума с помощью css методов
Дополнения к текущей теме: Интересные решения для форумов
ну вот выложил:
Ну лучше span скрыть совсем:
#pun-navlinks li a span {display:none}
А можно же так и картинкой заменить?
<!--Меняем Названия в Меню на картинку через CSS--> <style> #navindex a:before {content:url(адрес изображения);width:20px;} /* Форум */ #navuserlist a:before {content:url(адрес изображения);width:20px;} /* Участники */ #navrules a:before {content:url(адрес изображения);width:20px;} /* Правила */ #navsearch a:before {content:url(адрес изображения);width:20px;} /* Поиск */ #navprofile a:before {content:url(адрес изображения);width:20px;} /* Профиль */ #navadmin a:before {content:url(адрес изображения);width:20px;} /* Администрирование */ #navlogin a:before {content:url(адрес изображения);width:20px;} /* Вход */ #navlogout a:before {content:url(адрес изображения);width:20px;} /* Выход */ #pun-navlinks li a span {font-size:0;} </style>
Ширину ставим свою..
Для Сообщения:
<style> #navpm a {position: relative;} #navpm a:before {content:url(адрес изображения);width:20px;} #navpm a span { position: absolute; left: 12px; clip: rect(auto, auto, auto, 68px); } </style>
#pun-navlinks li a span {display:none}
На всякий случай оставил))
На всякий случай оставил))
Ну я Пояснил тут, - ибо я не просто так это пишу > Общие вопросы от новичков (59)
kolobdur74
может стоит добавить к CSS трюки ?
#navregister a:before {content:"Новый текст";} /* Регистрация */
#navextra1 a:before {content:"Новый текст";} /* Доп. пункт 1 */@media screen and (max-width: 540px) {
#pun-navlinks li a:before {display:none}
}
Отредактировано Lidia-Lada (Вт, 9 Май 2017 20:12:23)
Lidia-Lada
Добавил в код, поставил пометку
Аналог скриптовой реализации - на чистом CSS
Картинки OnLine/OffLine в Профиле в топике
В HTML верх (или в Конец Второго окна стилей, вынув из тегов <style>)
<style type="text/css">
.post .post-author.online >ul:after {
content:url(http://savepic.ru/4647873.png)
}
.post:not([data-group-id="3"]) .post-author:not(.online) >ul:after {
content:url(http://savepic.org/3595913.png);
}
.post .post-author>ul:after {
margin-left:0px; /*подвижка слева*/
margin-top:3px; /*подвижка сверху*/
display:block;
}
</style>
Обновлено 28.06.2017 (убрана иконка у Гостей)
Поскольку часто спрашивают код, - решил выложить тут:
Всплывающий текст в Шапке форума(при наведении)
В HTML верх:
<style type="text/css">
#tblWrap {
position:relative;
}
#tblHover {
position:absolute;opacity:0;
top:30px; /*подвижка сверху*/
left:0px; /*подвижка слева*/
margin:0px; /*отступы*/
padding:0px; /*внутренние отступы*/
width:100%; /*ширина*/
height:240px; /*высота*/
color:#CCC5B3; /*цвет шрифта*/
background:#48362C; /*фон*/
transition:opacity .6s ease-in-out; /*плавность появления*/
}
#tblHover:hover {
opacity:1;
}
</style>
<div id="tblWrap"><div id="tblHover">
Текст со Всплытием при Наведении
</div></div>
Красное - меняем, регулируем... Вписываем свой текст
CSS -растягивающаяся рамка картинкой на Аватар
(в данном случае уголки цветом)
В HTML верх (или в Конец Первого окна стиля без тегов <style></style>)
<style>
/*css растягивающаяся Рамка авиков */
.punbb .user-avatar img.ava,
.pa-avatar img[alt] {
border-width:6px!important;
border-color:transparent!important;
-moz-border-image: url(http://funkyimg.com/i/2J1GY.png) 6 stretch stretch!important;
-webkit-border-image: url(http://funkyimg.com/i/2J1GY.png) 6 stretch stretch!important;
-o-border-image: url(http://funkyimg.com/i/2J1GY.png) 6 stretch stretch!important;
border-image: url(http://funkyimg.com/i/2J1GY.png) 6 stretch stretch!important;
}
</style>
Красным - толщина рамки!
Вроде не было. Замена слов: Форум, Тем, Сообщений, Последнее сообщение:
<style>
#pun-index th.tcl,
#pun-index th.tc2,
#pun-index th.tc3,
#pun-index th.tcr {
color: transparent;
}#pun-index th.tcl:before,
#pun-index th.tc2:before,
#pun-index th.tc3:before,
#pun-index th.tcr:before {
color: red !important;
}
#pun-index th.tcl:before {content: "Другой Форум";}
#pun-index th.tc2:before {content: "Других Тем";}
#pun-index th.tc3:before {content: "Других Сообщений";}
#pun-index th.tcr:before {content: "Другое Последнее сообщение";}
</style>
Где: то что красным - цвет текста, то что синим другое название. В теории таким способом можно менять слова и в других местах, даже если там один НТМЛ, не применяя при этом скрипт.
#pun-index th.tcl:before,
#pun-index th.tc2:before,
#pun-index th.tc3:before,
#pun-index th.tcr:before {
color: red !important;
}
Я бы к этому добавила:
position: absolute;
Чтобы текст :before накладывался поверх того, который невидимый. Но не знаю для всех ли стилей подойдет.
Устранение блюра для фонов на форуме в Webkit браузерах
Идея от Spiritus Tergi
В конец первого окна Стиля
/*Типа Антиблюр*/
#pun-about p.container, /* Картинка в Футере(если не блюрит, - строку удаляем )*/
.category h2, /* Для Категорий */
#pun-stats h2 { /* Статистика */
image-rendering: pixelated;
}
Хак для опускания вниз рейтинга в посту:
<!-- Хак для опускания вниз рейтинга в посту --> <style> .post>.container { display: grid; grid-template-areas: "author body" "links links"; grid-template-rows: auto auto; grid-template-columns: auto 1fr; } .post-author { grid-area: author; float: none !important; } .post-body { grid-area: body; margin-left: 0 !important; padding: 1em !important; } .post-links { grid-area: links; } .post-author, .post-body {word-wrap: break-word;} .post-box { display: grid; grid-template-areas: "content content" "vote rating"; grid-template-rows: 1fr auto 0; grid-template-columns: 1fr auto; height: 100%; padding: 0 !important; } .post-content {grid-area: content;} .post-rating {grid-area: rating;} .post-vote {grid-area: vote;float: right;} </style>
Добавка/Правка для мобильного стиля:
<style> @media screen and (max-width: 540px) { .post>.container { grid-template-areas: "author" "body" "links"; grid-template-rows: auto auto auto; grid-template-columns: auto; } } </style>
Возможно придется перекрашивать фон в некоторых стандартных дизайнах, потому что я поменял паддинг местами из внутреннего контейнера в контейнер родителя, то есть из post-box в post-body - в нем сидел баг, который ломал хак..
P.S. По поводу grid - у него есть особенность сочетания ширины и высоты в процентах и padding.. grid считает 100% + padding, а не 100% включая padding, поэтому может выходить за рамки контейнера родителя..
Отредактировано kolobdur74 (Пн, 15 Апр 2019 21:30:06)
Хак для опускания вниз рейтинга в посту:
А чем отличается от этого?
/*опускаем вниз репу*/ .punbb .post-content { padding-bottom:36px; } .punbb .post-box { position:relative; } .post-rating,.post-vote { position:absolute; bottom:0;top:auto;right:20px;left:0; margin-bottom:4px; } .post-vote { right:140px;left:auto; }
А чем отличается от этого?
В этом:
.post-rating,.post-vote {
position:absolute;
Абсолют гуляет, особенно в мобильных устройствах.. Мой вариант не на абсолюте, не гуляет..
Абсолют гуляет, особенно в мобильных устройствах.. Мой вариант не на абсолюте, не гуляет..
По идее, при небольшом по высоте посте - не должон(Ибо он обрамление для absoluta
при небольшом по высоте посте
А при большом? Если помнишь я первый вариант тоже сделал на абсолюте, но абсолют как имел недостатки так и имеет.. Вообщем то главная проблема была в том, что дочерний блок не расширяется на высоту родительского блока, с помощью грида я эту проблему решил.. Можно еще решить это через флекс, но я от него все таки отказался - через флекс все таки больше пришлось бы переделывать, грид в данном случае был удобнее.. Других вариантов заменить абсолют я не нашел..
Но есть и недостатки - старые браузеры до 2016 года грид не поддерживают, возможно не поддерживают и некоторые китайские браузеры..
Отредактировано kolobdur74 (Пн, 22 Апр 2019 20:28:45)
А при большом?
Выходящим за область видимости экрана на мобилках бывают глюки ( код делался лет пять назад
По поводу проблемы (абракадабры) кириллицы в псевдоэлемнтах :after и :before в Своем стиле, надо добавить в Цвета style_cs.css в самый верх:
@charset "utf-8";
Вроде помогает..
Если не помогает, то лучше использовать такой код:
В самый верх в оба поля Своего стиля:
@charset "Windows-1251";
Отредактировано kolobdur74 (Пт, 21 Фев 2020 13:56:47)
Анимация цитаты
<style type="text/css"> /*цитаты анимация*/ .post-content .quote-box { -webkit-transform: translateZ(0); -o-transform: translateZ(0); transform: translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-backface-visibility: hidden; -o-backface-visibility:hidden; backface-visibility: hidden; -moz-osx-font-smoothing: grayscale; position: relative; background:#e3f3ff; -webkit-transition-property: color; -o-transition-property: color; transition-property: color; -webkit-transition-duration: 0.3s; -o-transition-duration: 0.3s; transition-duration: 0.3s; } .post-content .quote-box:before { content: ""; position: absolute; z-index: -1; top: 0; bottom: 0; left: 0; right: 0; background: #fcfeff; -webkit-transform: scaleY(1); -o-transform: scaleY(1); transform: scaleY(1); -webkit-transform-origin: 50%; -o-transform-origin: 50%; transform-origin: 50%; -webkit-transition-property: transform; -o-transition-property: transform; transition-property: transform; -webkit-transition-duration: 0.3s; -o-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; -o-transition-timing-function: ease-out; transition-timing-function: ease-out; } .post-content .quote-box:hover, .post-content .quote-box:focus, .post-content .quote-box:active { color: #555; } .post-content .quote-box:hover:before, .post-content .quote-box:focus:before, .post-content .quote-box:active:before { -webkit-transform: scaleY(0); -o-transform: scaleY(0); transform: scaleY(0); } </style>
Вы здесь » Единый форум поддержки » Новые возможности форумов » CSS трюки