Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 27.09.2015, 11:32
Новичок на форуме
Отправить личное сообщение для dimasheff Посмотреть профиль Найти все сообщения от dimasheff
 
Регистрация: 27.09.2015
Сообщений: 8

анимация по клику
Подскажите, пожалуйста.
Делаю 3d анимацию (чтоб слайдер переворачивался). Сделал ее в CSS по :hover

выглядит это примерно так:

Код:
<style>


.side1{
	padding:0 2vw;
	width:20vw;
	font-size:20px;
	color:#bebebe;
	display:block;
	background:lightblue;

}



.side2{
	position:relative;
	top:-300px;
	background:lightgreen;
	
	overflow:hidden;
	transform: rotateY(-180deg);
	margin:0 auto;
	backface-visibility:hidden;
}

.one-post{
	width:24vw;
	height: 500px;

	transform-style: preserve-3d;
	transition: transform 2s;
	
}

.one-post :hover .side1{
	margin: 0 auto;
	position:relative;
	overflow:hidden;
	padding:0;
	background:lightblue;
	white-space: nowrap;
	height:300px;

	backface-visibility:hidden;
	/*transform: rotateY(180deg);*/
	transition-duration:2s;
	transition-timing-function:linear;

	
	-webkit-transform-origin-x: 50%; 
	-webkit-transform-origin-y: 50%;
}

.one-post:hover .side2{
	

	transition-duration:1s;
	transition-timing-function:ease;
	


}

</style>


<div class="one-post">
    <div class = "side1">
     bla bla bla
     </div>

    <div class = "side2">
     oops oops oops
     </div>

</div>
но мне нужно сделать, чтоб это выполнялось не при наведении, а при клике на блок (в т.ч. чтоб и на телефоне нормально работало).

как это сделать?
Ответить с цитированием
  #2 (permalink)  
Старый 27.09.2015, 17:43
Аватар для sanmihan
Аспирант
Отправить личное сообщение для sanmihan Посмотреть профиль Найти все сообщения от sanmihan
 
Регистрация: 28.05.2015
Сообщений: 54

В див .one-post добавь инпут с типом checkbox и тогда селокторы с :hover надо заменить на .one-post input:checked ~ .side1

Также можно скрыть сам инпут, а в нужное место вставить label с атрибутом for="ид чекбокса". и label стилизовать под кнопку
Ответить с цитированием
  #3 (permalink)  
Старый 27.09.2015, 19:45
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 1,714

Если щёлкнуть или коснуться элемент получает фокус.
Это можно тоже исползват в данном случае.
<style>

.one-post {
  position: relative;
  width: 24%;
  height: 100px;
  perspective: 1000px;
 }

 .one-post .side1 {
  color: #343434;
  background: #ffeeff;
  transform-origin: 50% 50% 0;
  transition: all 0.35s ease-in-out 0s;
}

.one-post .side2 {
  position: absolute;
  width: 100%;
  left: 0px;
  top: 0px;
  opacity: 0;
  visibility: hidden;
  backface-visibility: hidden;
  transform: rotateY(-90deg);
  color: #343434;
  background: #eeeeff;
  transition: none;
 }

 .one-post:focus .side1 {
  transform: rotateY(90deg);
}

.one-post:focus .side2 {
  opacity: 1;
  visibility: visible;
  transform: rotateY(0deg);
  transition: all 0.35s ease 0.35s;
}

</style>


<div class="one-post" tabindex="0">
    <div class="side1">bla bla bla</div>
    <div class="side2">oops oops oops</div>
</div>
<div class="one-post" tabindex="0">
    <div class="side1">bla bla bla</div>
    <div class="side2">oops oops oops</div>
</div>
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Анимация после анимации Narahon Элементы интерфейса 12 02.04.2015 22:06
По клику на картинку с ссылкой открывается портфолио, а нужен переход по ссылке nitoiti Общие вопросы Javascript 7 08.09.2014 14:39
Открытие/закрытие дива по клику ссылки и закрытие по клику вне слоя vertmann Общие вопросы Javascript 3 18.11.2013 14:36
Помогите сделать так чтоб по клику открывалось и по клику же закрывалось Maxsl_89 Элементы интерфейса 1 25.10.2013 16:11
По второму клику анимация выполняется с середины скрипта x3zone Events/DOM/Window 2 26.10.2012 23:09