Ну рисуйте тогда раскадровку и анимируйте через js. Мы за вас этого не сделаем. Даже если случится чудо и вы найдёте что-то похожее, то рисовать всё равно придётся.
|
Первичный набросок codepen.io/tribatar/full/ozdxg
Все таки это не гут... |
tribatar, бросай это дело. В css нет средств для реализации такой идеи. Здесь - костыльное решение just for lulz.
|
autodromo,
Цитата:
|
autodromo,
Пожалуйста, отформатируйте свой код! ![]() Для этого его можно заключить в специальные теги: js/css/html и т.п., например: [js] ... ваш код... [/js] О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting. |
Пример с табами, как раз почти то, что я ищу, только я в js вообще не занимался, и в подключаемом jquery-ui совсем под свою задачу не смогу подпилить код. А задача очень похожа на те табы.
Задача: например есть 3 ссылки в ряд, но по умолчанию они "захлопнуты"(display:none). 1 - Нажатие на любую ссылку, делает активной ссылке highlight и "разворачивает" под ней информацию; 2- Повторный клик на активную захлопывает её, так же активную (текущую) ссылку должен захлопывать клик на любую другую ссылку и разворачивать в тот же момент содержание нажатой ссылки ну и естественно highlight уже у другой активной. Пока я реализовал только закрытие/открытие по одной и той же ссылке, а вот как сделать подсветку активной и захлопывать ее еще и по нажатию другой ссылки для меня проблема. Может поможете? <!DOCTYPE html> <head> <meta charset="utf-8"> <link rel="stylesheet" </head> <body> <div class="links"> <a id="1" class="pseudo-link" href="#">link1</a> <a class="pseudo-link align" href="#" id="2">link2</a> <a class="pseudo-link align" href="#" id="3">link3</a> <div id="1-1" class="hidden-text">Текст1</div> <div id="2-2" class="hidden-text">Текст2</div> <div id="3-3" class="hidden-text">Текст3</div> </div> </body> </html> .pseudo-link { text-decoration: none; border-bottom: 1px dashed #999; display:inline; } .hidden-text { display: none; padding-top: 10px; font-size: .9em } .align {margin-left: 15px} $("#1").click(function(){ $("#1-1").slideToggle("slow"); }); $("#2").click(function(){ $("#2-2").slideToggle("slow"); }); $("#3").click(function(){ $("#3-3").slideToggle("slow"); }); <!DOCTYPE html> <head> <meta charset="utf-8"> <link rel="stylesheet"> <script src="http://code.jquery.com/jquery-1.10.2.js"></script> </head> <body> <style> .pseudo-link { text-decoration: none; border-bottom: 1px dashed #999; display:inline; } .hidden-text { display: none; padding-top: 10px; font-size: .9em } .align {margin-left: 15px} </style> <div class="links"> <a id="1" class="pseudo-link" href="#">link1</a> <a class="pseudo-link align" href="#" id="2">link2</a> <a class="pseudo-link align" href="#" id="3">link3</a> <div id="1-1" class="hidden-text">Текст1</div> <div id="2-2" class="hidden-text">Текст2</div> <div id="3-3" class="hidden-text">Текст3</div> </div> <script language="javascript"> $("#1").click(function(){ $("#1-1").slideToggle("slow"); }); $("#2").click(function(){ $("#2-2").slideToggle("slow"); }); $("#3").click(function(){ $("#3-3").slideToggle("slow"); }); </script> </body> </html> |
рони,
Отредактировал. Даже работает. Может можно туда пару строк кода записать под мою задачу? |
Цитата:
всё же вам дали по ссылке - только своё вписать - и так <!DOCTYPE HTML> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style> .pseudo-link { text-decoration: none; border-bottom: 1px dashed #999; display:inline; } .hidden-text { display: none; padding-top: 10px; font-size: .9em } .align {margin-left: 15px} a.active:after { content: "Моя нажата"; color: #006400; background-color: #FFFACD; font-size: 90%; padding: 2px; } </style> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> <script> $(function () { var $links = $(".links a"), $divs = $(".links div"); $(".links").on("click", "a", function (event) { event.preventDefault(); $links.not(this).removeClass("active"); $(this).toggleClass("active"); var indx = $links.index(this), div = $divs.eq(indx); div.slideToggle("slow"); $divs.not(div).slideUp("slow"); }) $(document).on("click", function (event) { if ($(".links").has(event.target).length === 0) {$divs.slideUp("slow");$links.removeClass("active")} }); }) </script> </head> <body> <div class="links"> <a id="1" class="pseudo-link" href="#">link1</a> <a class="pseudo-link align" href="#" id="2">link2</a> <a class="pseudo-link align" href="#" id="3">link3</a> <div id="1-1" class="hidden-text">Текст1</div> <div id="2-2" class="hidden-text">Текст2</div> <div id="3-3" class="hidden-text">Текст3</div> </div> </body> </html> |
рони,
Спасибо огромное! А как добавить background highlight у кликнутой ссылки? Или это уже может сделать css? |
autodromo,
смотрите код выше .active{}добавлен класс для активной ссылки |
Часовой пояс GMT +3, время: 20:34. |