2014-08-28 2 views
0

Я пытаюсь иметь меню, которое имеет подменю, и это то, что у меня есть на данный момент (это сложнее, чем это), я хочу использовать свойство перехода:Переход на видимость собственности

.product:hover #button-option { 
    visibility: visible !important; 
} 
#button-option { 
    visibility: hidden; 
    -webkit-transition: visibility .2s; 
    transition: visibility .2s; 
} 

Вот мой jsfiddle: http://jsfiddle.net/4bsmq2kg/

Я хочу, чтобы мое подменю появиться чуть позже, или как занять некоторое время, чтобы выглядеть, как здесь: http://www.vmware.com

Как я мог сделать эту работу? Я пробовал несколько вещей, но никто не работал. Благодаря!

EDIT: Я действительно глуп и не осознал ошибку, которая была в коде, но я все еще не могу найти то, что я действительно хотел найти.

+1

Опубликуйте свой html-код и создайте скрипку. – Manwal

+0

Возможный дубликат [Анимация неанимируемых свойств с переходами CSS3] (http://stackoverflow.com/questions/11605637/animating-non-animatable-properties-with-css3-transitions) – 2014-08-28 04:41:58

+1

Что это связано с братом? комбинаторы? – 2014-08-28 04:47:23

ответ

2

Видимость будет проходить, но только в двоичном (вкл/выкл) режиме. Возможно, вы хотите перейти на opacity в дополнение (поскольку visibility необходимо отключить, чтобы предотвратить обнаружение мыши на элементе). Вам, вероятно, также не нужен/нужен !important. Кроме того, если вы не нацеливаете старые версии браузера, вам не нужно иметь префиксное свойство webkit-transition (если вы укажете его, должно быть -webkit-transition).

+0

Если я поместил непрозрачность, подменю будет «всегда» там, но просто невидимо, поэтому контент под ним не будет доступен. Мне нужно что-то вроде этого подменю: http://vmware.com –

+1

Вам нужно комбинировать 'visiblility' и' opacity'; см. вопрос, этот вопрос отмечен как возможный дубликат. – 2014-08-28 05:13:16

1

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

#button-option { 
    opacity: 0; 
    -webkit-transition: all 0.5s ease-out; 
    -moz-transition: all 0.5s ease-out; 
    transition: all 0.5s ease-out; 
} 
.product:hover #button-option { 
    opacity: 1; 
} 

Если вы хотите, чтобы меню скользить слева направо, то вы можете также анимировать положение:

#button-option { 
    left: -300px; 
    -webkit-transition: all 0.5s ease-out; 
    -moz-transition: all 0.5s ease-out; 
    transition: all 0.5s ease-out; 
} 
.product:hover #button-option { 
    left: 0px; 
} 

Вы можете проверить более подробно here.

0

В конце, я смешивал непрозрачность с видимостью, спасибо вам всем! собираюсь попробовать некоторые из ваших предложений тоже, Спокойной ночи!

Смежные вопросы