如何在响应式网站页脚菜单中取消CSS效果?

时间:2014-01-28 04:49:03

标签: css wordpress css3 responsive-design

我一直在使用本教程(http://tympanus.net/codrops/2011/10/24/creative-css3-animation-menus/)在http://kikidesign.net构建我的页脚菜单。它仅适用于桌面版。我正在尝试编辑移动版的页脚菜单,为此,我尝试在@media中取消效果。

桌面版

.ca-menu {
    padding: 0;
    margin: 20px auto;
    width: 100%;
    text-decoration: none;
}
.ca-menu li {
    float: left;
    width: 22.916666667%;
    overflow: hidden;
    position: relative;
    background: none;
    margin-right: 4px;
    text-decoration: none;
    -webkit-transition: all 300ms linear;
    -moz-transition: all 300ms linear;
    -o-transition: all 300ms linear;
    -ms-transition: all 300ms linear;
    transition: all 300ms linear;
}
.ca-menu li:hover {
    z-index:999;  
    -webkit-transform: scale(1.2);  
    -moz-transform: scale(1.2);  
    -ms-transform: scale(1.2);   
    -o-transform: scale(1.2); 
    transform: scale(1.2); 
}
.ca-menu li:hover .aboutimg, .ca-menu li:hover .contactimg, .ca-menu li:hover .downloadimg, .ca-menu li:hover .facebookimg {
    color: #ffffff;
    /**font-size: 30px;**/
    opacity:0.3;
}
.ca-main{
    font-family: 'PrintClearlyRegular';
    font-weight: normal;
    font-style: normal;
    font-size: 1.75em;
    text-align: center;
    padding: 5px 0 0 0;
    text-align: center;
    -webkit-transition: all 200ms linear;
    -moz-transition: all 200ms linear;
    -o-transition: all 200ms linear;
    -ms-transition: all 200ms linear;
    transition: all 200ms linear;
    text-decoration: none;
}
.ca-menu li:hover .ca-main{
    color: #ffffff;
    -webkit-animation: smallToBig 300ms ease;
    -moz-animation: smallToBig 300ms ease;
    -ms-animation: smallToBig 300ms ease;
    font-size: 2.1em;
    padding: 5px 0 0 0; 
    margin: 0;
}
.ca-menu li a{
    text-align: left;
    width: 100%;
    height: 100%;
    display: block;
    position: relative;
    text-decoration: none;
}
@-webkit-keyframes smallToBig{
    from {
        -webkit-transform: scale(0.1);
    }
    to {
        -webkit-transform: scale(1);
    }
}
@-moz-keyframes smallToBig{
    from {
        -moz-transform: scale(0.1);
    }
    to {
        -moz-transform: scale(1);
    }
}
@-ms-keyframes smallToBig{
    from {
        -ms-transform: scale(0.1);
    }
    to {
        -ms-transform: scale(1);
    }
}

移动版(仅@media屏幕和(最大宽度:480px))

.ca-menu li {
    float: left;
    width: 100%;
    overflow: hidden;
    position: relative;
    background: none;
    margin-right: 4px;
    text-decoration: none;
    -webkit-transition: none;
    -moz-transition: none;
    -o-transition: none;
    -ms-transition: none;
    transition: none;
}
.ca-menu li:hover {
    z-index:0;  
    -webkit-transform: none;  
    -moz-transform: none;  
    -ms-transform: none;   
    -o-transform: none; 
    transform: none; 
}
.ca-menu li:hover .aboutimg, .ca-menu li:hover .contactimg, .ca-menu li:hover .downloadimg, .ca-menu li:hover .facebookimg {
    color: #ffffff;
    /**font-size: 30px;**/
    opacity: 1;
}
.ca-main{
    font-family: 'PrintClearlyRegular';
    font-weight: normal;
    font-style: normal;
    font-size: 1.75em;
    text-align: center;
    padding: 5px 0 0 0;
    text-align: center;
    -webkit-transition: none;
    -moz-transition: none;
    -o-transition: none;
    -ms-transition: none;
    transition: none;
    text-decoration: none;
}
.ca-menu li:hover .ca-main{
    color: #ffffff;
    -webkit-animation: none;
    -moz-animation: none;
    -ms-animation: none;
    font-size: 1.75em;
    padding: 5px 0 0 0; 
    margin: 0;
}

然而,当我在移动版本中测试它时,链接不断跳跃。我不希望链接跳起来或类似的东西,但我无法解决它!我需要做些什么来解决它?

2 个答案:

答案 0 :(得分:0)

问题出在移动版的.ca-main中。你没有设置“保证金:0”,因为它是一个H3,它已经有一个保证金。因此,当你将li悬停时,边距会被移除并获得“跳跃”效果。它与过渡或动画无关。

顺便说一句,您在custom.js第14行中遇到语法错误。

答案 1 :(得分:0)

您可以为不同的屏幕编写媒体查询,并为所有屏幕提供CSS样式。

媒体查询示例

@media screen and (max-width: 1024px) {
    //your changed code here;
}
@media screen and (max-width: 950px) {
    //your changed style here;
}
@media screen and (max-width: 768px) {
    //your changed style here;
}

您可以从网上找到不同的屏幕尺寸 或者如果您想在任何尺寸的屏幕上制作下拉框,您可以参考此链接 http://tinynav.viljamis.com/