前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >9.29【前端开发】超链接伪类:如何在svg元素上使用超链接伪类?

9.29【前端开发】超链接伪类:如何在svg元素上使用超链接伪类?

作者头像
LIYI
发布2020-10-09 11:00:05
1.8K0
发布2020-10-09 11:00:05
举报
文章被收录于专栏:艺述论专栏艺述论专栏

超链接伪类:如何在svg元素上使用超链接伪类?

代码语言:javascript
复制
a:link  未单击访问时超链接样式  a:link{color:#9ef5f9;}
a:visited  单击访问后超链接样式  a:visited {color:#333;}
a:hover  鼠标悬浮其上的超链接样式  a:hover{color:#ff7300;}
a:active  鼠标单击未释放的超链接样式  a:active {color:#999;}

注意定义的顺序LVHA

这个样式可能会被后声明的其他链接相关的伪类覆盖,这些伪类包括 (:link, :hover,和:active)。要适当地设置链接样式,请将:visited 规则放在:link 规则之后,但在:hover 和:active 规则之前。

参照 LVHA 顺序::link — :visited — :hover — :active。

链接,访问过,悬停,激活(按下的)。

注意先写默认样式

代码语言:javascript
复制
    <style>
        a,a:link {
            background-color: white;
            border: 1px solid white;
        }
        a:visited {
            background-color: yellow;
            border-color: hotpink;
            color: hotpink;
        }
</style>
    <a href="#test-visited-link">链接1</a>
    <a href="">空链接2</a>

样式限制

并不是只能给a链接加这几个伪类,可以给所有元素添加。但并不是所有的样式可用,只有少量可用

允许使用的 CSS 属性为color, background-color, border-color, border-bottom-color, border-left-color, border-right-color, border-top-color, column-rule-color, 和outline-color。

  • 文本颜色
  • 背景色
  • 边框色

允许使用的 SVG 属性为fill 和 stroke。

在svg上使用超连接伪类

代码语言:javascript
复制
    <h2>使用svg</h2>
    <svg width="200" height="200">
        <defs>
            <style type="text/css">
                #rect1 {
                    stroke: black;
                    fill: red;
                }


                #rect1:hover {
                    stroke: black;
                    fill: rgb(101, 31, 192);
                }


                #rect1:active {
                    stroke: black;
                    fill: rgb(109, 84, 98);
                }
</style>
        </defs>
        <rect x="10" height="50" y="10" width="50" id="rect1" />
    </svg

alpha样式将受限

允许使用的样式的 αlpha 分量(透明度)将被忽略。设置在:visited中的样式将使用元素的非:visited 访问状态的 αlpha 分量, 如果该分量为0,这个样式将被完全忽略。

background-color与color颜色的alpha分量均是受限的。

最佳实践

在使用超链接伪类时,按照LVHA的顺序依次定义伪类样式,注意能够使用的样式属性,三个颜色,以及alpha的受限。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-09-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 艺述论 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 注意定义的顺序LVHA
  • 注意先写默认样式
  • 样式限制
  • 在svg上使用超连接伪类
    • alpha样式将受限
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档