Web Мастерская Блог
Сообщество Web Мастеров. Тут собрано всё, чтобы написать свой первый сайт, запустить его в Интернет и поддерживать его в течении всей его работы.
CSS: Как сделать картинку квадратной
Для вывода дополнительных картинок, в виде ссылок на них, стояла задача сделать все фото квадратными и одинаково размера. При этом сами картинки имеют абсолютно разные размеры. Фотографии резать или сжимать нельзя. Перво, что пришло на ум - это вставить в теги атрибут
Решил вставлять стили в теги, потому что используется свойство
Тут:
Отлично справляется с поставленной задачей. Но, я стараюсь не допускать...
style
, вот так:
<div style="display: inline-block; width: 165px;">
<a style="display: block; background-image: url('{img server_id=$photo.server_id path='photo.url_photo' file=$photo.destination suffix='_240' return_url=true}'); background-position: 50% 25%; background-size: cover; height: 160px; width: 160px;" href="{permalink module='photo' id=$photo.photo_id}" title:"{$photo.title|clean}" rel="{$photo.photo_id}"></a>
</div>
Решил вставлять стили в теги, потому что используется свойство
background-image: url()
, а URL картинки постоянно меняется, и угадать его нельзя.Тут:
background-image:
background-position: 50% 25%;
background-size: cover;
Отлично справляется с поставленной задачей. Но, я стараюсь не допускать...
- Жалоба
- 2
Карусель фотографий
Для одной своей идеи, использовал карусель фотографий, взятую из интернета и переписанную под себя. Выложу, как было у меня. Карусель использует библиотеку jQuery, так что придется подключать её, хотя, переписать на чистый JavaScript не составит особого труда.
jQuery:
...
jQuery:
var carouselID = 1, change = 8000;
function carouselStart() {
if ($('div[data-carousel="carousel"]').length < 1) {
return false;
};
$('div[data-carousel="carousel"]').each(function() {
$(this).removeAttr('data-carousel').attr('id', 'carousel_' + carouselID);
carousel('#carousel_' + carouselID);
carouselID++;
});
};
$(() => {
carouselStart();
window.setInterval(carouselStart, 3000);
});
function carousel(carouselID) {
var $slr, $sls, interval, $selectors, $btns, currentIndex, nextIndex;
var cycle = index => {
var $currentSlide, $nextSlide, $currentSelector, $nextSelector;
nextIndex = index !== undefined ? index : nextIndex;
$currentSlide =
Псевдокласс :hover в атрибуте style (CSS | HTML | JS)
Появилась задача изменить стиль элемента при наведении курсора и вернуть прежний стиль, когда курсор увели. Для решения этой задачи существует псевдокласс :hover, при помощи, которого можно решить задачу, но дело в том, что стиль элемента находится в атрибуте style элемента, например:
В него же необходимо вставить :hover, но делать этого конечно нельзя. Необходимо искать другой вариант решения, а вариантом вполне может быть - использование атрибутов событий: onMouseOver и onMouseOut:
Делаем так:
Готово. Задача решена, теперь цвет текста меняется при наведении курсора и возвращается в прежний цвет, когда курсор убегает....
<span style="color: #CCCCCC;">Текст</span>
В него же необходимо вставить :hover, но делать этого конечно нельзя. Необходимо искать другой вариант решения, а вариантом вполне может быть - использование атрибутов событий: onMouseOver и onMouseOut:
- onMouseOver - Выполняется, при наведении курсора.
- onMouseOut - Выполняется, при выходи курсора за пределы элемента.
Делаем так:
<span style="color: #CCCCCC;"
onMouseOver="this.style.color = '#999999';"
onMouseOut="this.style.color = '#CCCCCC';">
Текст
</span>
Готово. Задача решена, теперь цвет текста меняется при наведении курсора и возвращается в прежний цвет, когда курсор убегает....
PHP: Цикл в две колонки | В два столбика
Работая над одним приложением, потребовалось перечислить элементы массива в две колонки (Столбика):

Для решения этой задачи, у меня было два варианта. Первый:
И CSS к шаблону:
И второй:
Я выбрал первый вариант. Он мне показался лучшем, чем второй....

Для решения этой задачи, у меня было два варианта. Первый:
<?php foreach ($characteristics as $characteristic): ?>
<div class="feature">
<?php echo $this->lang()->phrase($characteristic['name']); ?>: <strong><?php echo $characteristic['info']; ?></strong>
</div>
<?php endforeach; ?>
И CSS к шаблону:
.feature {
display: inline-block;
width: 48%;
}
И второй:
<?php foreach ($characteristics as $key => $characteristic): ?>
<?php if ($key % 2): ?>
<div style="float: right;">
<?php else: ?>
<div style="float: left;">
<?php endif; ?>
<?php echo $this->lang()->phrase($characteristic['name']); ?>: <strong><?php echo $characteristic['info']; ?></strong>
</div>
<?php endforeach; ?>
Я выбрал первый вариант. Он мне показался лучшем, чем второй....
Как избавиться от наследования "opacity"
Известно, что CSS свойство
На:
И прозрачность будет только у родителя....
opacity
наследуется элементами, что находятся внутри элемента с данным свойством. Для потомственных элементов свойство поменять не выйдет, прописав их в ручную. Однако, если прозрачность необходима для фона, можно поменять:
.class {
background: #FFFFFF;
opacity: 0.6;
}
На:
.class {
background: rgba(255, 255, 255, 0.5);
}
И прозрачность будет только у родителя....
- Apache 6
- CMS 3
- CSS 12
- FTP 1
- HTML 10
- JavaScript 32
- MySQL 16
- Nginx 7
- PHP 41
- phpMyAdmin 2
- SVG 3
- URL 1
- XML 3
- Безопасность 4
- Библиотека JS 12
- Графика 1
- Доменное имя 1
- Инструкция 1
- Кодировка 2
- Контент 6
- Мнение 2
- Монетизация сайта 2
- Настройка 3
- Оптимизация 2
- Ошибка 7
- Поисковая система 1
- Продвижение сайта 6
- Софт 1
- Старт 2
- Функция 1
- Хостинг | Сервер 3