Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript HTML/CSS:将图标添加到文本按钮_Javascript_Html_Css - Fatal编程技术网

Javascript HTML/CSS:将图标添加到文本按钮

Javascript HTML/CSS:将图标添加到文本按钮,javascript,html,css,Javascript,Html,Css,我依靠增加中心元素的顶部和底部填充来创建悬停效果,如下图所示 要保持此效果,是否有方法执行以下操作: 为了给它们各自的图标腾出空间,将文本(帮助和注销)放低一点(例如,我知道我可以做position:relative,然后top:7px,但这会弄乱悬停动画效果,因为“白色”扩展的中心应该是绿色标题的中心) 现在文本已降低,我想在两个“按钮”中的每个按钮上添加一个透明的背景精灵,一个问号符号表示“帮助”,另一个符号表示“注销”。因此背景仍然是绿色的,在绿色背景的顶部,我将看到每个按钮的符号,以及每

我依靠增加中心元素的顶部和底部填充来创建悬停效果,如下图所示

要保持此效果,是否有方法执行以下操作:

  • 为了给它们各自的图标腾出空间,将文本(帮助和注销)放低一点(例如,我知道我可以做position:relative,然后top:7px,但这会弄乱悬停动画效果,因为“白色”扩展的中心应该是绿色标题的中心)

  • 现在文本已降低,我想在两个“按钮”中的每个按钮上添加一个透明的背景精灵,一个问号符号表示“帮助”,另一个符号表示“注销”。因此背景仍然是绿色的,在绿色背景的顶部,我将看到每个按钮的符号,以及每个符号下面的文本。如果我这么做的话 .help{background:url()no repeat-2px 0;},例如,图像随着悬停效果移动,因为元素的高度增加

  • 我将用于背景/图标的精灵的形式如下: {url(../theme/images/top_sprites.png)不重复-2px 0;}

    那么,在保留文本、绿色背景以及动画的同时,如何使用精灵作为这些“按钮”的图标呢?请注意,添加边框是为了更清楚地显示动画/效果的工作方式

    .header{
    高度:50px;
    背景色:#008b10;
    }
    .菜单{
    填充:16px;
    文本对齐:居中;
    字体系列:Raleway,arial,无衬线;
    浮动:左;
    溢出:可见;
    边框:1px纯蓝色;
    }
    .菜单a:悬停{
    背景色:#ffffff;
    颜色:#008b10;
    填充:16px 5px;
    }
    .菜单a{
    /*框大小:边框框*/
    /*浮动:左*/
    文字装饰:无;
    过渡:0.4s;
    颜色:#ffffff;
    字体大小:13px;
    文字装饰:无;
    填充:0 5px;
    边框:1px纯红;
    }

    您可以在锚点上设置伪元素的动画

    例如:

    .header{
    最小高度:50px;
    背景色:#008b10;
    }
    .菜单{
    填充:0 16px;
    字体系列:Raleway,arial,无衬线;
    边框:1px纯蓝色;
    }
    .菜单a{
    文字装饰:无;
    过渡:0.4s;
    颜色:#ffffff;
    字体大小:13px;
    填充:16px 5px;
    显示:内联flex;
    对齐项目:居中;
    弯曲方向:立柱;
    位置:相对位置;
    }
    .菜单{
    位置:相对位置;
    }
    .菜单a:之前{
    过渡:0.4s;
    内容:'';
    显示:块;
    位置:绝对位置;
    背景:白色;
    不透明度:0;
    变换:scaleY(.5);
    左:0;
    右:0;
    排名:0;
    底部:0;
    }
    .菜单a:悬停:之前{
    变换:scaleY(1);
    不透明度:1;
    }
    .菜单a img{
    最大宽度:15px;
    显示:块;
    位置:相对位置;
    垫底:4px;
    }
    .菜单a:悬停{
    颜色:#008b10;
    }

    您可以在锚点上设置伪元素的动画

    例如:

    .header{
    最小高度:50px;
    背景色:#008b10;
    }
    .菜单{
    填充:0 16px;
    字体系列:Raleway,arial,无衬线;
    边框:1px纯蓝色;
    }
    .菜单a{
    文字装饰:无;
    过渡:0.4s;
    颜色:#ffffff;
    字体大小:13px;
    填充:16px 5px;
    显示:内联flex;
    对齐项目:居中;
    弯曲方向:立柱;
    位置:相对位置;
    }
    .菜单{
    位置:相对位置;
    }
    .菜单a:之前{
    过渡:0.4s;
    内容:'';
    显示:块;
    位置:绝对位置;
    背景:白色;
    不透明度:0;
    变换:scaleY(.5);
    左:0;
    右:0;
    排名:0;
    底部:0;
    }
    .菜单a:悬停:之前{
    变换:scaleY(1);
    不透明度:1;
    }
    .菜单a img{
    最大宽度:15px;
    显示:块;
    位置:相对位置;
    垫底:4px;
    }
    .菜单a:悬停{
    颜色:#008b10;
    }
    
    
    .header{
    高度:50px;
    背景色:#008b10;
    }
    .菜单{
    填充:16px;
    文本对齐:居中;
    字体系列:Raleway,arial,无衬线;
    浮动:左;
    溢出:可见;
    边框:1px纯蓝色;
    }
    .菜单a:悬停{
    背景色:#ffffff;
    颜色:#008b10;
    填充:16px 5px;
    }
    .菜单a{
    /*框大小:边框框*/
    /*浮动:左*/
    文字装饰:无;
    过渡:0.4s;
    颜色:#ffffff;
    字体大小:13px;
    文字装饰:无;
    填充:0 5px;
    边框:1px纯红;
    }
    
    
    .header{
    高度:50px;
    背景色:#008b10;
    }
    .菜单{
    填充:16px;
    文本对齐:居中;
    字体系列:Raleway,arial,无衬线;
    浮动:左;
    溢出:可见;
    边框:1px纯蓝色;
    }
    .菜单a:悬停{
    背景色:#ffffff;
    颜色:#008b10;
    填充:16px 5px;
    }
    .菜单a{
    /*框大小:边框框*/
    /*浮动:左*/
    文字装饰:无;
    过渡:0.4s;
    颜色:#ffffff;
    字体大小:13px;
    文字装饰:无;
    填充:0 5px;
    边框:1px纯红;
    }
    
    
    --CSS--

    a:hover {
        cursor: pointer;
    }
    .a-border {
        display: inline-block;
        position: relative;
        color: white;
        padding: 0.5rem 0.25rem;
        margin: 0 1.5rem;
        overflow: hidden;
    }
    .a-border::after {
        content: url("../img/more-btn-bottom.png");
        display: block;
        position: absolute;
        bottom: 0;
        left: -0.25rem;
        border: none;
        transform: scale(0, 1);
        transform-origin: 0% 100%;
        transition: transform 0.4s;
    }
    a:hover .a-border::after {
        transform:scale(1, 1);
    }
    a.focused .a-border::after {
        transform: none;
    }
    
    function menuclick(underline) {
        var focused = document.getElementsByClassName("focused");
        var i;
        for (i = 0; i < focused.length; i++) {
            var under = focused[i];
            if (under.classList.contains('focused')) {
                under.classList.remove('focused');
            }
        }
        if (!underline.parentElement.classList.contains('focused')) {
            underline.parentElement.classList.add('focused');
        }
    }
    
    <a href="#about"><span class="a-border" onclick="menuclick(this)">ABOUT US</span></a>
    <a href="#creater"><span class="a-border" onclick="menuclick(this)">CREATERS</span></a>
    <a href="#news"><span class="a-border" onclick="menuclick(this)">NEWS</span></a>
    <a href="#contact"><span class="a-border" onclick="menuclick(this)">CONTACT</span></a>
    
    --JS---

    a:hover {
        cursor: pointer;
    }
    .a-border {
        display: inline-block;
        position: relative;
        color: white;
        padding: 0.5rem 0.25rem;
        margin: 0 1.5rem;
        overflow: hidden;
    }
    .a-border::after {
        content: url("../img/more-btn-bottom.png");
        display: block;
        position: absolute;
        bottom: 0;
        left: -0.25rem;
        border: none;
        transform: scale(0, 1);
        transform-origin: 0% 100%;
        transition: transform 0.4s;
    }
    a:hover .a-border::after {
        transform:scale(1, 1);
    }
    a.focused .a-border::after {
        transform: none;
    }
    
    function menuclick(underline) {
        var focused = document.getElementsByClassName("focused");
        var i;
        for (i = 0; i < focused.length; i++) {
            var under = focused[i];
            if (under.classList.contains('focused')) {
                under.classList.remove('focused');
            }
        }
        if (!underline.parentElement.classList.contains('focused')) {
            underline.parentElement.classList.add('focused');
        }
    }
    
    <a href="#about"><span class="a-border" onclick="menuclick(this)">ABOUT US</span></a>
    <a href="#creater"><span class="a-border" onclick="menuclick(this)">CREATERS</span></a>
    <a href="#news"><span class="a-border" onclick="menuclick(this)">NEWS</span></a>
    <a href="#contact"><span class="a-border" onclick="menuclick(this)">CONTACT</span></a>
    
    函数菜单单击(下划线){
    var focused=document.getElementsByClassName(“focused”);
    var i;
    对于(i=0;i
    --HTML--

    a:hover {
        cursor: pointer;
    }
    .a-border {
        display: inline-block;
        position: relative;
        color: white;
        padding: 0.5rem 0.25rem;
        margin: 0 1.5rem;
        overflow: hidden;
    }
    .a-border::after {
        content: url("../img/more-btn-bottom.png");
        display: block;
        position: absolute;
        bottom: 0;
        left: -0.25rem;
        border: none;
        transform: scale(0, 1);
        transform-origin: 0% 100%;
        transition: transform 0.4s;
    }
    a:hover .a-border::after {
        transform:scale(1, 1);
    }
    a.focused .a-border::after {
        transform: none;
    }
    
    function menuclick(underline) {
        var focused = document.getElementsByClassName("focused");
        var i;
        for (i = 0; i < focused.length; i++) {
            var under = focused[i];
            if (under.classList.contains('focused')) {
                under.classList.remove('focused');
            }
        }
        if (!underline.parentElement.classList.contains('focused')) {
            underline.parentElement.classList.add('focused');
        }
    }
    
    <a href="#about"><span class="a-border" onclick="menuclick(this)">ABOUT US</span></a>
    <a href="#creater"><span class="a-border" onclick="menuclick(this)">CREATERS</span></a>
    <a href="#news"><span class="a-border" onclick="menuclick(this)">NEWS</span></a>
    <a href="#contact"><span class="a-border" onclick="menuclick(this)">CONTACT</span></a>
    
    
    
    --CSS--

    a:hover {
        cursor: pointer;
    }
    .a-border {
        display: inline-block;
        position: relative;
        color: white;
        padding: 0.5rem 0.25rem;
        margin: 0 1.5rem;
        overflow: hidden;
    }
    .a-border::after {
        content: url("../img/more-btn-bottom.png");
        display: block;
        position: absolute;
        bottom: 0;
        left: -0.25rem;
        border: none;
        transform: scale(0, 1);
        transform-origin: 0% 100%;
        transition: transform 0.4s;
    }
    a:hover .a-border::after {
        transform:scale(1, 1);
    }
    a.focused .a-border::after {
        transform: none;
    }
    
    function menuclick(underline) {
        var focused = document.getElementsByClassName("focused");
        var i;
        for (i = 0; i < focused.length; i++) {
            var under = focused[i];
            if (under.classList.contains('focused')) {
                under.classList.remove('focused');
            }
        }
        if (!underline.parentElement.classList.contains('focused')) {
            underline.parentElement.classList.add('focused');
        }
    }
    
    <a href="#about"><span class="a-border" onclick="menuclick(this)">ABOUT US</span></a>
    <a href="#creater"><span class="a-border" onclick="menuclick(this)">CREATERS</span></a>
    <a href="#news"><span class="a-border" onclick="menuclick(this)">NEWS</span></a>
    <a href="#contact"><span class="a-border" onclick="menuclick(this)">CONTACT</span></a>
    
    --JS---

    a:hover {
        cursor: pointer;
    }
    .a-border {
        display: inline-block;
        position: relative;
        color: white;
        padding: 0.5rem 0.25rem;
        margin: 0 1.5rem;
        overflow: hidden;
    }
    .a-border::after {
        content: url("../img/more-btn-bottom.png");
        display: block;
        position: absolute;
        bottom: 0;
        left: -0.25rem;
        border: none;
        transform: scale(0, 1);
        transform-origin: 0% 100%;
        transition: transform 0.4s;
    }
    a:hover .a-border::after {
        transform:scale(1, 1);
    }
    a.focused .a-border::after {
        transform: none;
    }
    
    function menuclick(underline) {
        var focused = document.getElementsByClassName("focused");
        var i;
        for (i = 0; i < focused.length; i++) {
            var under = focused[i];
            if (under.classList.contains('focused')) {
                under.classList.remove('focused');
            }
        }
        if (!underline.parentElement.classList.contains('focused')) {
            underline.parentElement.classList.add('focused');
        }
    }
    
    <a href="#about"><span class="a-border" onclick="menuclick(this)">ABOUT US</span></a>
    <a href="#creater"><span class="a-border" onclick="menuclick(this)">CREATERS</span></a>
    <a href="#news"><span class="a-border" onclick="menuclick(this)">NEWS</span></a>
    <a href="#contact"><span class="a-border" onclick="menuclick(this)">CONTACT</span></a>
    
    函数菜单单击(下划线){
    var focused=document.getElementsByClassName(“focused”);
    var i;
    对于(i=0;i