首页 > 解决方案 > 想要为移动视图自定义工具提示

问题描述

我已经为所有方向弹出创建了工具提示代码,但我只想弹出到移动设备的顶部,请帮助我。我无法编写@media 屏幕代码,请任何人帮助我。为只有 (tooltip.top) 的弹出窗口工作的移动设备编写代码

 .tooltip {
    display:inline-block;
    position:relative;
    border-bottom:2px solid #ff5733;
    text-align:left;
}

.tooltip .right {
    min-width:200px; 
    top:50%;
    left:100%;
    margin-left:20px;
    transform:translate(0, -50%);
    padding:10px 20px;
    color:#444444;
    background-color:#EEEEEE;
    font-weight:normal;
    font-size:13px;
    border-radius:8px;
    position:absolute;
    z-index:99999999;
    box-sizing:border-box;
    box-shadow:0 1px 8px rgba(0,0,0,0.5);
    visibility:hidden; opacity:0; transition:opacity 0.8s;
}

.tooltip:hover .right {
    visibility:visible; opacity:1;
}

.tooltip .right i {
    position:absolute;
    top:50%;
    right:100%;
    margin-top:-12px;
    width:12px;
    height:24px;
    overflow:hidden;
}

.tooltip .right i::after {
    content:'';
    position:absolute;
    width:12px;
    height:12px;
    left:0;
    top:50%;
    transform:translate(50%,-50%) rotate(-45deg);
    background-color:#EEEEEE;
    box-shadow:0 1px 8px rgba(0,0,0,0.5);
}

.tooltip .top {
    min-width:200px; 
    top:-20px;
    left:50%;
    transform:translate(-50%, -100%);
    padding:10px 20px;
    color:#444444;
    background-color:#EEEEEE;
    font-weight:normal;
    font-size:13px;
    border-radius:8px;
    position:absolute;
    z-index:99999999;
    box-sizing:border-box;
    box-shadow:0 1px 8px rgba(0,0,0,0.5);
    visibility:hidden; opacity:0; transition:opacity 0.8s;
}

.tooltip:hover .top {
    visibility:visible; opacity:1;
}

.tooltip .top i {
    position:absolute;
    top:100%;
    left:50%;
    margin-left:-12px;
    width:24px;
    height:12px;
    overflow:hidden;
}

.tooltip .top i::after {
    content:'';
    position:absolute;
    width:12px;
    height:12px;
    left:50%;
    transform:translate(-50%,-50%) rotate(45deg);
    background-color:#EEEEEE;
    box-shadow:0 1px 8px rgba(0,0,0,0.5);
}
.tooltip .bottom {
    min-width:200px; 
    top:40px;
    left:50%;
    transform:translate(-50%, 0);
    padding:10px 20px;
    color:#444444;
    background-color:#EEEEEE;
    font-weight:normal;
    font-size:13px;
    border-radius:8px;
    position:absolute;
    z-index:99999999;
    box-sizing:border-box;
    box-shadow:0 1px 8px rgba(0,0,0,0.5);
    visibility:hidden; opacity:0; transition:opacity 0.8s;
}

.tooltip:hover .bottom {
    visibility:visible; opacity:1;
}

.tooltip .bottom i {
    position:absolute;
    bottom:100%;
    left:50%;
    margin-left:-12px;
    width:24px;
    height:12px;
    overflow:hidden;
}

.tooltip .bottom i::after {
    content:'';
    position:absolute;
    width:12px;
    height:12px;
    left:50%;
    transform:translate(-50%,50%) rotate(45deg);
    background-color:#EEEEEE;
    box-shadow:0 1px 8px rgba(0,0,0,0.5);
}

.tooltip .left {
    min-width:200px; 
    top:50%;
    right:100%;
    margin-right:20px;
    transform:translate(0, -50%);
    padding:10px 20px;
    color:#444444;
    background-color:#EEEEEE;
    font-weight:normal;
    font-size:13px;
    border-radius:8px;
    position:absolute;
    z-index:99999999;
    box-sizing:border-box;
    border:3px solid #ff5733;box-shadow:0 1px 8px rgba(0,0,0,0.5);
    visibility:hidden; opacity:0; transition:opacity 0.8s;
}

.tooltip:hover .left {
    visibility:visible; opacity:1;
}

.tooltip .left i {
    position:absolute;
    top:50%;
    left:100%;
    margin-top:-12px;
    width:12px;
    height:24px;
    overflow:hidden;
}

.tooltip .left i::after {
    content:'';
    position:absolute;
    width:12px;
    height:12px;
    left:0;
    top:50%;
    transform:translate(-50%,-50%) rotate(-45deg);
    background-color:#EEEEEE;
    border:3px solid #ff5733;box-shadow:0 1px 8px rgba(0,0,0,0.5);
}
<span class="btn btn-primary tooltip">Hover Me to Preview
    <span class="bottom">
        <h3>Lorem Ipsum</h3>
        <p>Dolor sit amet, consectetur adipiscing elit.ofugugvufg
        efuwgefwgcvurwef
        wfierhfvierhvoerihvr</p>
        <i></i>
    </span>
</span>

<span class="btn btn-primary tooltip">Hover Me to Preview
    <span class="top">
        <h3>Lorem Ipsum</h3>
        <p>Dolor sit amet, consectetur adipiscing elit.</p>
        <i></i>
    </span>
</span>
<span class="btn btn-primary tooltip">Hover Me to Preview
    <span class="left">
        <h3>Lorem Ipsum</h3>
        <p>Dolor sit amet, consectetur adipiscing elit.</p>
        <i></i>
    </span>
</span>
<span class="btn btn-primary tooltip">Hover Me to Preview
    <div class="right">
        <h3>Lorem Ipsum</h3>
        
        <p><img alt="The Bangle Sellers Poem's Workbook Solution" border="0" data-original-height="427" data-original-width="760" src="https://newsroom.ibm.com/image/security%2Bthumbnail%2B400x400.png"> consectetur 
        efrnvlkfnv</p>
        <i></i>
    </div>
    </span>

所有方向的工具提示代码这里是代码

标签: cssblogs

解决方案


您想在移动设备的顶部显示它,所以我在 body 顶部添加了一些边距,以便我们可以在上方有一些空间并且您可以看到您的弹出窗口,您需要做的就是在每个弹出窗口 div 上添加一个公共类或像其他人一样以相同的方式跨越和设置样式,每个位置没有不同的位置,每个弹出窗口的相同位置都会显示在顶部。

.tooltip {
        display: inline-block;
        position: relative;
        border-bottom: 2px solid #ff5733;
        text-align: left;
    }

    .tooltip .right {
        min-width: 200px;
        top: 50%;
        left: 100%;
        margin-left: 20px;
        transform: translate(0, -50%);
        padding: 10px 20px;
        color: #444444;
        background-color: #EEEEEE;
        font-weight: normal;
        font-size: 13px;
        border-radius: 8px;
        position: absolute;
        z-index: 99999999;
        box-sizing: border-box;
        box-shadow: 0 1px 8px rgba(0, 0, 0, 0.5);
        visibility: hidden;
        opacity: 0;
        transition: opacity 0.8s;
    }

    .tooltip:hover .right {
        visibility: visible;
        opacity: 1;
    }

    .tooltip .right i {
        position: absolute;
        top: 50%;
        right: 100%;
        margin-top: -12px;
        width: 12px;
        height: 24px;
        overflow: hidden;
    }

    .tooltip .right i::after {
        content: &#39;
        &#39;
        ;
        position: absolute;
        width: 12px;
        height: 12px;
        left: 0;
        top: 50%;
        transform: translate(50%, -50%) rotate(-45deg);
        background-color: #EEEEEE;
        box-shadow: 0 1px 8px rgba(0, 0, 0, 0.5);
    }

    .tooltip .top {
        min-width: 200px;
        top: -20px;
        left: 50%;
        transform: translate(-50%, -100%);
        padding: 10px 20px;
        color: #444444;
        background-color: #EEEEEE;
        font-weight: normal;
        font-size: 13px;
        border-radius: 8px;
        position: absolute;
        z-index: 99999999;
        box-sizing: border-box;
        box-shadow: 0 1px 8px rgba(0, 0, 0, 0.5);
        visibility: hidden;
        opacity: 0;
        transition: opacity 0.8s;
    }

    .tooltip:hover .top {
        visibility: visible;
        opacity: 1;
    }

    .tooltip .top i {
        position: absolute;
        top: 100%;
        left: 50%;
        margin-left: -12px;
        width: 24px;
        height: 12px;
        overflow: hidden;
    }

    .tooltip .top i::after {
        content: &#39;
        &#39;
        ;
        position: absolute;
        width: 12px;
        height: 12px;
        left: 50%;
        transform: translate(-50%, -50%) rotate(45deg);
        background-color: #EEEEEE;
        box-shadow: 0 1px 8px rgba(0, 0, 0, 0.5);
    }

    .tooltip .bottom {
        min-width: 200px;
        top: 40px;
        left: 50%;
        transform: translate(-50%, 0);
        padding: 10px 20px;
        color: #444444;
        background-color: #EEEEEE;
        font-weight: normal;
        font-size: 13px;
        border-radius: 8px;
        position: absolute;
        z-index: 99999999;
        box-sizing: border-box;
        box-shadow: 0 1px 8px rgba(0, 0, 0, 0.5);
        visibility: hidden;
        opacity: 0;
        transition: opacity 0.8s;
    }

    .tooltip:hover .bottom {
        visibility: visible;
        opacity: 1;
    }

    .tooltip .bottom i {
        position: absolute;
        bottom: 100%;
        left: 50%;
        margin-left: -12px;
        width: 24px;
        height: 12px;
        overflow: hidden;
    }

    .tooltip .bottom i::after {
        content: &#39;
        &#39;
        ;
        position: absolute;
        width: 12px;
        height: 12px;
        left: 50%;
        transform: translate(-50%, 50%) rotate(45deg);
        background-color: #EEEEEE;
        box-shadow: 0 1px 8px rgba(0, 0, 0, 0.5);
    }

    .tooltip .left {
        min-width: 200px;
        top: 50%;
        right: 100%;
        margin-right: 20px;
        transform: translate(0, -50%);
        padding: 10px 20px;
        color: #444444;
        background-color: #EEEEEE;
        font-weight: normal;
        font-size: 13px;
        border-radius: 8px;
        position: absolute;
        z-index: 99999999;
        box-sizing: border-box;
        border: 3px solid #ff5733;
        box-shadow: 0 1px 8px rgba(0, 0, 0, 0.5);
        visibility: hidden;
        opacity: 0;
        transition: opacity 0.8s;
    }

    .tooltip:hover .left {
        visibility: visible;
        opacity: 1;
    }

    .tooltip .left i {
        position: absolute;
        top: 50%;
        left: 100%;
        margin-top: -12px;
        width: 12px;
        height: 24px;
        overflow: hidden;
    }

    .tooltip .left i::after {
        content: '';
        position: absolute;
        width: 12px;
        height: 12px;
        left: 0;
        top: 50%;
        transform: translate(-50%, -50%) rotate(-45deg);
        background-color: #EEEEEE;
        border: 3px solid #ff5733;
        box-shadow: 0 1px 8px rgba(0, 0, 0, 0.5);
    }


    @media(max-width: 767px) {
        body {
            margin-top: 500px;
        }
        .tooltip>.toolTipWrap i:after {
          content: '';
    position: absolute;
    width: 12px;
    height: 12px;
    left: 0;
    top: 50%;
    transform: translate(-50%, -50%) rotate(-45deg);
    border: 3px solid #ff5733;
        }
        .tooltip>.toolTipWrap {
            left: 50% !important;
            top: auto !important;
            transform: translateX(-50%);
            right: auto !important;
            bottom: 150% !important;
        }

        .tooltip>.toolTipWrap i {
            position: absolute;
            top: 100%;
            left: 50%;
            margin-top: 0px;
            width: 12px;
            height: 24px;
            overflow: hidden;
            transform: rotate(90deg) translateX(-50%);
            background: transparent;
        }
    }
<span class="btn btn-primary tooltip">Hover Me to Preview
        <span class="bottom toolTipWrap">
            <h3>Lorem Ipsum</h3>
            <p>Dolor sit amet, consectetur adipiscing elit.ofugugvufg
                efuwgefwgcvurwef
                wfierhfvierhvoerihvr</p>
            <i></i>
        </span>
    </span>
    <span class="btn btn-primary tooltip">Hover Me to Preview
        <span class="top toolTipWrap">
            <h3>Lorem Ipsum</h3>
            <p>Dolor sit amet, consectetur adipiscing elit.</p>
            <i></i>
        </span>
    </span>
    <span class="btn btn-primary tooltip">Hover Me to Preview
        <span class="left toolTipWrap">
            <h3>Lorem Ipsum</h3>
            <p>Dolor sit amet, consectetur adipiscing elit.</p>
            <i></i>
        </span>
    </span>
    <span class="btn btn-primary tooltip">Hover Me to Preview
        <div class="right toolTipWrap">
            <h3>Lorem Ipsum</h3>
            <p><img alt="The Bangle Sellers Poem's Workbook Solution" border="0" data-original-height="427" data-original-width="760" src="https://newsroom.ibm.com/image/security%2Bthumbnail%2B400x400.png"> consectetur
                efrnvlkfnv</p>
            <i></i>
        </div>
    </span>


推荐阅读