Вот честное слово оборвал бы руки людям, сделавшим такую галерею с якорями в контакте, прямо выводит из себя, когда перелистав чью-то галерею хочу вернуться на страницу назад и попадаю в галерею…
По поводу этой галереи: да — красиво, да — css3 дрочеры покакают ландышами, да — не ново и нет — прыгающие контролы это не круто.
Любые «кликовые» псевдоклассы имеют недостатки(и существенные). Однако, в который раз убеждаюсь: если нет прямой задачи прыгать по странице, то лучше использовать :focus.
Как-то делал галерейку на CSS VK-like (Вот она), вот только не доделал.
Суть в том, что не нравится прицеливаться в навигационные стрелки, проще тыкнуть куда-то справа и пролистать вперёд или слева и, соответственно, пролистать назад. Используются те же :target и :not, разве что без украшений.
P.S. У вас или у автора сей статьи небольшой баг в FF, который решается добавлением outline:none; к <a>:
Использование :target — это ужасно. Прыгающая страница от кликов — мрак.
Так что все такие галереи (а подобных примеров сотни по интернетам) — баловство и не более…
хм…
мне кажется css3 стал уж очень громоздким, плохочитаемым.
Стили предназначены для визуального оформления, а не для логики.
Решение на javascript лучше тем, что там есть своеобразный MVC: html это модель, view это css, controller это js. Все понятно, структурированно и очевидно.
Если заглянуть в прошлое, мы увидим что css появился как «навесок» для html, чтобы разделить представление от данных. И это было хорошо. Сейчас же css делает похожую ошибку пытаясь работать с логикой. Не для этого ли уже придуман js?
Мне кажется что в будущем от css «отпочкуется» еще какой-нибудь субязык, который будет работать с логикой в css. И это плохо.
Ну во первых сначала css3 станет поддерживаться всеми браузерами, затем его начнут использовать и дорабатывать для работы с логикой а уже из за громоздкости «отпочкуется» субязык для визуального оформления не оглядываясь что он уже был.
Создаем эффект lightbox при помощи CSS3