Список пользователей

1
Админ
Постов: 101
2
Элита
Постов: 34
3
Элита
Постов: 28
4
VIP
Постов: 26
5
Дизайнер
Постов: 25
6
Пользователи
Постов: 25
7
Пользователи
Постов: 24
8
Проверенные
Постов: 21

  • Страница 1 из 1
  • 1
Новый дизайн опросов UCOZ форума
Дата: Пятница, 29.08.2025, 11:53 | Сообщение # 1 | | Написал: Начинающий
Автор темы
Мурчанн не в сети
        Сообщений:101
         Регистрация:20.10.2016

Полностью обновил внешний вид блоков опросов на форуме: добавлены современные визуальные эффекты, улучшена читаемость, внедрены плавные анимации для кнопок и прогресс-бара, а также оптимизировано отображение количества голосов.

Дизайн сохраняет функциональность старых опросов, но при этом выглядит свежо и стильно.
В теме можно обсудить идеи для дальнейших улучшений, предложить новые эффекты или цвета, а все ваши идеи будут реализованы моими руками. 13



CSS (Сразу между стилями прописано)

Код
<STYLE>

/* Контейнер опроса */
.cell-poll-title1 {
border: 4px solid #853b97;     /* рамка вокруг блока */
margin: 5px;                  /* внешний отступ */
padding: 15px 10px;           /* внутренний отступ */
font-family: Verdana, Helvetica, Arial, sans-serif; /* шрифт */
font-size: 1rem;              /* размер шрифта */
font-weight: bold;            /* жирный текст */
color: #3d4152;               /* цвет текста */
box-shadow: 5px 5px 0 0 #853b97; /* тень блока */
text-align: left;             /* выравнивание текста по левому краю */
border-radius: 8px;           /* скругление углов */
background: #fff;             /* цвет фона */
}

/* Каждый ответ */
.answer {
width: 100%;                  /* ширина */
margin-bottom: 15px;          /* отступ снизу */
position: relative;           /* относительное позиционирование */
font-size: 0.9rem;            /* размер текста */
font-family: Verdana, sans-serif; /* шрифт */
}

/* Ссылки и результаты */
.cell-poll-link {
margin-top: 8px;              /* отступ сверху */
font-size: 0.7rem;            /* размер текста */
color: #333;                  /* цвет текста */
}
.cell-poll-link a {
color: #853b97;               /* цвет ссылок */
text-decoration: none;        /* убираем подчеркивание */
margin: 0 3px;                /* отступы между ссылками */
}
.cell-poll-link a:hover {
color: #642B73;               /* цвет при наведении */
text-decoration: underline;   /* добавляется подчеркивание */
}

/* Блок всех ответов */
.cell-poll-answers {
margin-top: 10px;             /* отступ сверху */
}

/* Каждый ответ (дублируется, с другими настройками) */
.answer {
width: 100%;
margin-bottom: 12px;
position: relative;
font-size: 0.75rem;           /* размер текста меньше */
font-family: Verdana, sans-serif;
}

/* Полоса прогресса (цветная полоска внутри ответа) */
.answer div div {
height: 20px;                 /* высота полосы */
border-radius: 10px;          /* скругленные углы */
background: linear-gradient(90deg, #75D0ED, #5BC254); /* градиент */
box-shadow: inset 0 -2px 4px rgba(0,0,0,0.4),
             inset 0 2px 4px rgba(255,255,255,0.4); /* внутренняя тень */
width: 0;                     /* ширина изначально 0, потом увеличивается анимацией */
transition: width 1.5s ease-in-out; /* плавное заполнение */
}

/* Процент голосов */
.answer span {
position: absolute;           /* абсолютное позиционирование */
right: 6px;                   /* отступ справа */
top: 50%;                     /* середина по вертикали */
transform: translateY(-50%);  /* выравнивание текста по центру полосы */
font-size: 0.65rem;           /* маленький размер шрифта */
color: #000;                  /* черный текст */
font-weight: bold;            /* жирный */
}

/* Альтернативное оформление полоски */
.answer div div {
border-radius: 4px;           /* скругленные углы */
background: #75D0ED;          /* голубой фон */
box-shadow: inset 0 -2px 4px rgba(0,0,0,0.4),
             inset 0 2px 4px rgba(255,255,255,0.4);
height: 20px;
}

/* Анимация блеска кнопок */
@keyframes shine {
0% { background-position: -200% 0; }
100% { background-position: 200% 0; }
}

/* Кнопки голосования */
.pollButton,
.pollBut {
position: relative;
overflow: hidden;             /* скрывает лишний фон */
background: linear-gradient(
  90deg,
  #853b97 0%,
  #9370DB 20%,
  #853b97 40%,
  #853b97 100%
);                             /* переливающийся фон */
background-size: 200% auto;   /* размер градиента для анимации */
color: #fff;                  /* белый текст */
border: none;                 /* без рамки */
height: 40px;                 /* высота кнопки */
padding: 0 5px;               /* внутренний отступ */
font-size: 12px;              /* размер шрифта */
font-weight: 500;             /* полужирный */
text-transform: uppercase;    /* заглавные буквы */
letter-spacing: 1px;          /* расстояние между буквами */
border-radius: 20px;          /* скругленные углы */
cursor: pointer;              /* курсор "рука" */
animation: shine 18s linear infinite; /* бесконечный плавный перелив */
box-shadow: 0 0 8px rgba(133, 59, 151, 0.5); /* тень */
transition: transform 0.2s, box-shadow 0.3s; /* плавные эффекты */
}

/* Эффект при наведении на кнопку */
.pollButton:hover,
.pollBut:hover {
transform: scale(0.99);       /* уменьшает кнопку чуть-чуть */
box-shadow: 0 0 2px rgba(147, 112, 219, 0.9); /* изменяет тень */
}

/* Ответы в другом стиле */
.answer {
float: left;                  
width: 100%;
padding-top: 0px;
position: relative;
height: 30px !important;      /* фиксированная высота */
font-size: 11px;
margin: 0 0 15px;
background: #e8e8e8;          /* серый фон */
color: #000;                  /* черный текст */
border-radius: 0px;
font-family: Verdana, Helvetica, Arial, sans-serif;
}

/* Дублирующиеся стили контейнера */
.cell-poll-title1 {
border: 4px solid #000;       /* черная рамка */
margin: 5px 5px 5px 5px;
padding: 5px 5px;
position: relative;
box-shadow: 5px 5px 0 0 #853b97;
}
.cell-poll-title1 {
color: #3d4152;
font-size: 10px;
padding-top: 10px;
display: block;
text-align: left;
font-size: 1rem;
font-weight: bold;
}
.cell-poll-title1 {
border: 4px solid #853b97;
margin: 5px 5px 8px 5px;
padding: 15px 5px;
position: relative;
box-shadow: 5px 5px 0 0 #853b97;
}

/* Общий стиль для кнопок */
.pollButton, button, input[type="submit"], .btn, input[type="reset"] ,.form__btn, .qq-upload-button {
display: inline-flex;         /* выравнивание текста по центру */
align-items: center;
justify-content: center;
cursor: pointer;
text-align: center;
font-weight: 500;
white-space: nowrap;          /* текст в одну строку */
background-color:#853b97;
color: #fff;
border-radius: 20px;
box-shadow: none;
text-transform: uppercase;
letter-spacing: 2px;
}

/* Стили при наведении на кнопки */
.button:hover, .btn:hover, input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover,
.form__btn:hover, .qq-upload-button:hover, .pm__links a:hover, .usp__btn a:hover {
background-color: #642B73;   /* меняется фон */
color: #fff;                 /* текст белый */
border-color: #642B73;       /* меняется рамка */
}

/* Кнопка pollBut отдельно */
.pollBut {
display: inline-flex;
align: center;
justify-content: center;
cursor: pointer;
text-align: center;
padding: 0 20px;
height: 40px;
font-size: 12px;
font-weight: 500;
white-space: nowrap;
background-color: #FFF;
color: #fff;
border-radius: 20px;
box-shadow: none;
text-transform: uppercase;
letter-spacing: 1px;
}

</STYLE>


HTML-код, шаблон блока опроса для вставки на сайт. 13

Код
<div class="cell-poll-title1">$QUESTION$</div>
<div class="cell-poll-answers">$ANSWERS$</div>
<div class="cell-poll-link">
<span>Ответов: <strong>$TOTAL_VOTES$</strong></span>

<a href="$RESULTS_LINK$" >Результаты </a>
<b> | </b>
<a href="$ARCHIVE_LINK$">Архив </a>
</div>


Скрипт вставляем ниже.

Код
<script>
var color_poll = [
"#ff4d4f","#fa0fcb","#F6954E","#dd8cd2","#75D0ED",
"#5BC254","#CFC72D","#DD3344","#FE9B6F","#4176B3"
];

// Находим все полоски внутри блока ответов
document.querySelectorAll('.cell-poll-answers .answer div div').forEach(function(el, i){
// Цвет полоски
if(!color_poll[i]) color_poll[i] = '#F8F8F8';
el.style.background = color_poll[i];

// Берём процент из data-width или style.width
var target = el.getAttribute('data-width') || el.style.width || '0%';
var percent = parseFloat(target);

// Масштабируем маленькие значения, чтобы полоска была заметнее
var scale = 0.5;
if(percent < 50) percent = 50 * scale + percent * (1 - scale);

// Устанавливаем ширину с небольшой задержкой для плавного эффекта
setTimeout(function(){
el.style.width = percent + '%';
}, 100);

// Количество голосов из data-votes
var votes = el.getAttribute('data-votes') || '0';

// Добавляем текст под полоской
var info = el.closest('.answer').querySelector('.answer-info');
if(info) info.textContent = percent + '% (' + votes + ' голосов)';
});
</script>


Или это полная копия, которую можно просто вставить на сайт, если цель именно такая.
Если же нужно использовать кусками, по отдельности, тогда смотрите другие варианты выше. 9

Код
<STYLE>

/* Контейнер опроса */
.cell-poll-title1 {
border: 4px solid #853b97;     /* рамка вокруг блока */
margin: 5px;                  /* внешний отступ */
padding: 15px 10px;           /* внутренний отступ */
font-family: Verdana, Helvetica, Arial, sans-serif; /* шрифт */
font-size: 1rem;              /* размер шрифта */
font-weight: bold;            /* жирный текст */
color: #3d4152;               /* цвет текста */
box-shadow: 5px 5px 0 0 #853b97; /* тень блока */
text-align: left;             /* выравнивание текста по левому краю */
border-radius: 8px;           /* скругление углов */
background: #fff;             /* цвет фона */
}

/* Каждый ответ */
.answer {
width: 100%;                  /* ширина */
margin-bottom: 15px;          /* отступ снизу */
position: relative;           /* относительное позиционирование */
font-size: 0.9rem;            /* размер текста */
font-family: Verdana, sans-serif; /* шрифт */
}

/* Ссылки и результаты */
.cell-poll-link {
margin-top: 8px;              /* отступ сверху */
font-size: 0.7rem;            /* размер текста */
color: #333;                  /* цвет текста */
}
.cell-poll-link a {
color: #853b97;               /* цвет ссылок */
text-decoration: none;        /* убираем подчеркивание */
margin: 0 3px;                /* отступы между ссылками */
}
.cell-poll-link a:hover {
color: #642B73;               /* цвет при наведении */
text-decoration: underline;   /* добавляется подчеркивание */
}

/* Блок всех ответов */
.cell-poll-answers {
margin-top: 10px;             /* отступ сверху */
}

/* Каждый ответ (дублируется, с другими настройками) */
.answer {
width: 100%;
margin-bottom: 12px;
position: relative;
font-size: 0.75rem;           /* размер текста меньше */
font-family: Verdana, sans-serif;
}

/* Полоса прогресса (цветная полоска внутри ответа) */
.answer div div {
height: 20px;                 /* высота полосы */
border-radius: 10px;          /* скругленные углы */
background: linear-gradient(90deg, #75D0ED, #5BC254); /* градиент */
box-shadow: inset 0 -2px 4px rgba(0,0,0,0.4),
             inset 0 2px 4px rgba(255,255,255,0.4); /* внутренняя тень */
width: 0;                     /* ширина изначально 0, потом увеличивается анимацией */
transition: width 1.5s ease-in-out; /* плавное заполнение */
}

/* Процент голосов */
.answer span {
position: absolute;           /* абсолютное позиционирование */
right: 6px;                   /* отступ справа */
top: 50%;                     /* середина по вертикали */
transform: translateY(-50%);  /* выравнивание текста по центру полосы */
font-size: 0.65rem;           /* маленький размер шрифта */
color: #000;                  /* черный текст */
font-weight: bold;            /* жирный */
}

/* Альтернативное оформление полоски */
.answer div div {
border-radius: 4px;           /* скругленные углы */
background: #75D0ED;          /* голубой фон */
box-shadow: inset 0 -2px 4px rgba(0,0,0,0.4),
             inset 0 2px 4px rgba(255,255,255,0.4);
height: 20px;
}

/* Анимация блеска кнопок */
@keyframes shine {
0% { background-position: -200% 0; }
100% { background-position: 200% 0; }
}

/* Кнопки голосования */
.pollButton,
.pollBut {
position: relative;
overflow: hidden;             /* скрывает лишний фон */
background: linear-gradient(
  90deg,
  #853b97 0%,
  #9370DB 20%,
  #853b97 40%,
  #853b97 100%
);                             /* переливающийся фон */
background-size: 200% auto;   /* размер градиента для анимации */
color: #fff;                  /* белый текст */
border: none;                 /* без рамки */
height: 40px;                 /* высота кнопки */
padding: 0 5px;               /* внутренний отступ */
font-size: 12px;              /* размер шрифта */
font-weight: 500;             /* полужирный */
text-transform: uppercase;    /* заглавные буквы */
letter-spacing: 1px;          /* расстояние между буквами */
border-radius: 20px;          /* скругленные углы */
cursor: pointer;              /* курсор "рука" */
animation: shine 18s linear infinite; /* бесконечный плавный перелив */
box-shadow: 0 0 8px rgba(133, 59, 151, 0.5); /* тень */
transition: transform 0.2s, box-shadow 0.3s; /* плавные эффекты */
}

/* Эффект при наведении на кнопку */
.pollButton:hover,
.pollBut:hover {
transform: scale(0.99);       /* уменьшает кнопку чуть-чуть */
box-shadow: 0 0 2px rgba(147, 112, 219, 0.9); /* изменяет тень */
}

/* Ответы в другом стиле */
.answer {
float: left;                  
width: 100%;
padding-top: 0px;
position: relative;
height: 30px !important;      /* фиксированная высота */
font-size: 11px;
margin: 0 0 15px;
background: #e8e8e8;          /* серый фон */
color: #000;                  /* черный текст */
border-radius: 0px;
font-family: Verdana, Helvetica, Arial, sans-serif;
}

/* Дублирующиеся стили контейнера */
.cell-poll-title1 {
border: 4px solid #000;       /* черная рамка */
margin: 5px 5px 5px 5px;
padding: 5px 5px;
position: relative;
box-shadow: 5px 5px 0 0 #853b97;
}
.cell-poll-title1 {
color: #3d4152;
font-size: 10px;
padding-top: 10px;
display: block;
text-align: left;
font-size: 1rem;
font-weight: bold;
}
.cell-poll-title1 {
border: 4px solid #853b97;
margin: 5px 5px 8px 5px;
padding: 15px 5px;
position: relative;
box-shadow: 5px 5px 0 0 #853b97;
}

/* Общий стиль для кнопок */
.pollButton, button, input[type="submit"], .btn, input[type="reset"] ,.form__btn, .qq-upload-button {
display: inline-flex;         /* выравнивание текста по центру */
align-items: center;
justify-content: center;
cursor: pointer;
text-align: center;
font-weight: 500;
white-space: nowrap;          /* текст в одну строку */
background-color:#853b97;
color: #fff;
border-radius: 20px;
box-shadow: none;
text-transform: uppercase;
letter-spacing: 2px;
}

/* Стили при наведении на кнопки */
.button:hover, .btn:hover, input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover,
.form__btn:hover, .qq-upload-button:hover, .pm__links a:hover, .usp__btn a:hover {
background-color: #642B73;   /* меняется фон */
color: #fff;                 /* текст белый */
border-color: #642B73;       /* меняется рамка */
}

/* Кнопка pollBut отдельно */
.pollBut {
display: inline-flex;
align: center;
justify-content: center;
cursor: pointer;
text-align: center;
padding: 0 20px;
height: 40px;
font-size: 12px;
font-weight: 500;
white-space: nowrap;
background-color: #FFF;
color: #fff;
border-radius: 20px;
box-shadow: none;
text-transform: uppercase;
letter-spacing: 1px;
}

</STYLE>

<div class="cell-poll-title1">$QUESTION$</div>
<div class="cell-poll-answers">$ANSWERS$</div>
<div class="cell-poll-link">
<span>Ответов: <strong>$TOTAL_VOTES$</strong></span>

<a href="$RESULTS_LINK$" >Результаты </a>
<b> | </b>
<a href="$ARCHIVE_LINK$">Архив </a>
</div>

<script>
var color_poll = [
"#ff4d4f","#fa0fcb","#F6954E","#dd8cd2","#75D0ED",
"#5BC254","#CFC72D","#DD3344","#FE9B6F","#4176B3"
];

// Находим все полоски внутри блока ответов
document.querySelectorAll('.cell-poll-answers .answer div div').forEach(function(el, i){
// Цвет полоски
if(!color_poll[i]) color_poll[i] = '#F8F8F8';
el.style.background = color_poll[i];

// Берём процент из data-width или style.width
var target = el.getAttribute('data-width') || el.style.width || '0%';
var percent = parseFloat(target);

// Масштабируем маленькие значения, чтобы полоска была заметнее
var scale = 0.5;
if(percent < 50) percent = 50 * scale + percent * (1 - scale);

// Устанавливаем ширину с небольшой задержкой для плавного эффекта
setTimeout(function(){
el.style.width = percent + '%';
}, 100);

// Количество голосов из data-votes
var votes = el.getAttribute('data-votes') || '0';

// Добавляем текст под полоской
var info = el.closest('.answer').querySelector('.answer-info');
if(info) info.textContent = percent + '% (' + votes + ' голосов)';
});
</script>


Мурчанн


Прикрепления: 9069548.jpg (48.2 Kb) · 9471152.jpg (53.4 Kb)
Признаюсь, не знаю почему, но глядя на звезды мне всегда хочется мечтать.
Дата: Суббота, 30.08.2025, 10:59 | Сообщение # 2 | | Написал: Новичок
ElliotLar не в сети
        Сообщений:9
         Регистрация:10.03.2016
За хорошее поведение За преданность форуму За любовь народа

Ахаха 😂 прям как дороги в деревне: где-то кусочек в километр, а где-то одна строка на 10 км растянулась 🚜💨 Но прикол в том, что движок uCoz вообще не напрягается , он такие «шоссе из символов» щёлкает как семечки 🌻⚡ Быстро, без нагрузки, и ещё, наверное, подмигивает типа: «Да это ж для меня вообще разминка!» 😎

ElliotLar

Через 20 лет вы будете больше разочарованы теми вещами, которые вы не делали, чем теми, которые вы сделали. Так отчальте от тихой пристани. Почувствуйте попутный ветер в вашем парусе. Двигайтесь вперед, действуйте, открывайте!
Дата: Суббота, 30.08.2025, 13:24 | Сообщение # 3 | | Написал: Новичок
Agricket не в сети
        Сообщений:8
         Регистрация:06.08.2016

Цитата Ник автора цитаты ; ()
Ахаха 😂 прям как дороги в деревне: где-то кусочек в километр, а где-то одна строка на 10 км растянулась 🚜💨 Но прикол в том, что движок uCoz вообще не напрягается , он такие «шоссе из символов» щёлкает как семечки 🌻⚡ Быстро, без нагрузки, и ещё, наверное, подмигивает типа: «Да это ж для меня вообще разминка!»

Сравнение получилось посредственным, а вот опросы выглядят довольно симпатично. Тем не менее, создаётся впечатление, что им не помешало бы дополнительное доработанное оформление ,что-то ещё добавить, либо подправить для большей симметричности.

Agricket

Влюбленная женщина, как собака, которая бежит за грузовиком... И она не знает, что будет делать с грузовиком, когда догонит его.
Дата: Понедельник, 29.09.2025, 22:04 | Сообщение # 4 | | Написал: Новичок
DavidHom не в сети
        Сообщений:26
         Регистрация:13.11.2016
За преданность форуму За любовь народа

Когда то были опросы , теперь их вдруг не стало. 8

DavidHom

Бывший чемпион мира в полусреднем весе Эррол Спенс официально подтвердил свое желание воспользоваться правом на матч-реванш с абсолютным чемпионом мира в этом весе
  • Страница 1 из 1
  • 1
Поиск: