如何將工具提示添加到span元素?

在下面的代碼中,我但願用戶懸停跨度時出現工具提示,我該怎麼作? 我不想使用任何連接。 html

<span> text </span>

#1樓

這是簡單的內置方法: web

<span title="My tip">text</span>

這將爲您提供純文本工具提示。 若是要使用格式豐富的HTML的豐富工具提示,則須要使用庫來完成。 幸運的是有那些瀏覽器


#2樓

在大多數瀏覽器中,title屬性將做爲工具提示呈現,而且一般能夠靈活選擇要使用的元素類型。 ide

<span title="This will show as a tooltip">Mouse over for a tooltip!</span>
<a href="http://www.stackoverflow.com" title="Link to stackoverflow.com">stackoverflow.com</a>
<img src="something.png" alt="Something" title="Something">

全部這些將在大多數每種瀏覽器中呈現工具提示。 函數


#3樓

"title"屬性將被瀏覽器用做工具提示的文本,若是您想對其應用樣式,請考慮使用一些插件 工具


#4樓

帶有純CSS的自定義工具提示-無需JavaScript:

此處的示例(帶有代碼) / 全屏示例

做爲默認title屬性工具提示的替代方法,您能夠使用:before / :after 僞元素和HTML5 data-*屬性來製做本身的自定義CSS工具提示。 ui

使用提供的CSS,能夠使用data-tooltip屬性將工具提示添加到元素。 spa

您還能夠使用data-tooltip-position屬性(接受的值: top / right / bottom / left )控制自定義工具data-tooltip-position.net

例如,如下將在span元素的底部添加一個工具頂部。 插件

<span data-tooltip="Custom tooltip text." data-tooltip-position="bottom">Custom bottom tooltip.</span>

在此處輸入圖片說明

這是如何運做的?

經過使用attr()函數檢索自定義屬性值,能夠顯示帶有僞元素的自定義工具提示。

[data-tooltip]:before {
    content: attr(data-tooltip);
}

就工具提示的位置而言,只需使用屬性選擇器並根據屬性的值更改位置便可。

此處的示例(帶有代碼) / 全屏示例

示例中使用的完整CSS-根據您的須要對其進行自定義。

[data-tooltip] {
    display: inline-block;
    position: relative;
    cursor: help;
    padding: 4px;
}
/* Tooltip styling */
[data-tooltip]:before {
    content: attr(data-tooltip);
    display: none;
    position: absolute;
    background: #000;
    color: #fff;
    padding: 4px 8px;
    font-size: 14px;
    line-height: 1.4;
    min-width: 100px;
    text-align: center;
    border-radius: 4px;
}
/* Dynamic horizontal centering */
[data-tooltip-position="top"]:before,
[data-tooltip-position="bottom"]:before {
    left: 50%;
    -ms-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}
/* Dynamic vertical centering */
[data-tooltip-position="right"]:before,
[data-tooltip-position="left"]:before {
    top: 50%;
    -ms-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
[data-tooltip-position="top"]:before {
    bottom: 100%;
    margin-bottom: 6px;
}
[data-tooltip-position="right"]:before {
    left: 100%;
    margin-left: 6px;
}
[data-tooltip-position="bottom"]:before {
    top: 100%;
    margin-top: 6px;
}
[data-tooltip-position="left"]:before {
    right: 100%;
    margin-right: 6px;
}

/* Tooltip arrow styling/placement */
[data-tooltip]:after {
    content: '';
    display: none;
    position: absolute;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid;
}
/* Dynamic horizontal centering for the tooltip */
[data-tooltip-position="top"]:after,
[data-tooltip-position="bottom"]:after {
    left: 50%;
    margin-left: -6px;
}
/* Dynamic vertical centering for the tooltip */
[data-tooltip-position="right"]:after,
[data-tooltip-position="left"]:after {
    top: 50%;
    margin-top: -6px;
}
[data-tooltip-position="top"]:after {
    bottom: 100%;
    border-width: 6px 6px 0;
    border-top-color: #000;
}
[data-tooltip-position="right"]:after {
    left: 100%;
    border-width: 6px 6px 6px 0;
    border-right-color: #000;
}
[data-tooltip-position="bottom"]:after {
    top: 100%;
    border-width: 0 6px 6px;
    border-bottom-color: #000;
}
[data-tooltip-position="left"]:after {
    right: 100%;
    border-width: 6px 0 6px 6px;
    border-left-color: #000;
}
/* Show the tooltip when hovering */
[data-tooltip]:hover:before,
[data-tooltip]:hover:after {
    display: block;
    z-index: 50;
}

#5樓

對於基本工具提示,您須要:

<span title="This is my tooltip"> Hover on me to see tooltip! </span>
相關文章
相關標籤/搜索