我有一个名为“登录”的部分和一个名为“注册”的部分。当它们的不透明度发生变化时,我想要一个需要 0.3 秒的线性过渡。
CSS:
#login{
opacity: 0;
transition:opacity 0.3s linear;}
#register{
opacity: 0;
display: none;
transition:opacity 0.3s linear;}
当您在此处的主页上单击“查询”时,不透明度#login
更改为 1。过渡效果很好!当您单击登录表单下方的“oder registriere dich neu”时,登录部分opacity: 0
再次获取 - 然后获取display: none
. 这也适用于过渡。
但是,然后将 REGISTER-Section 放入display: block
然后opacity: 1
(在setTimeout
500 毫秒后)。这没有过渡!为什么?当我点击“Hast du schon einen Account?”时 再次(回到登录),注册块将再次完美地淡出过渡,登录表单再次出现而没有过渡?
这是用于设置不透明度的 Javascript 代码:
function changeSection(IDOut, IDIn)
{
var IDOut = "#" + IDOut;
var IDIn = "#" + IDIn;
hideSection(IDOut);
showSection(IDIn);
}
function hideSection(IDOut)
{
$(IDOut).css({opacity: "0"});
setTimeout(function(){
$(IDOut).css({display: "none"});
},500);
}
function showSection(IDIn)
{
setTimeout(function(){
$(IDIn).css({display: "block"});
$(IDIn).css({opacity: "1"});
},500);
}
IDOut 是部分,我想淡出(witch 非常适合登录和注册)。
IDIn 是部分,我想淡入(女巫不要 WOKR 登录和注册)!
为什么转换不适用于 IDIn? 有任何想法吗?