zoukankan      html  css  js  c++  java
  • (前端)html与css css 20、超级链接a的修饰

    html结构:超级链接a

    <a href="http://www.baidu.com" target="_blank">超级链接 </a>

    1、a的四个状态

    a标签与其他标签不同,它有四个显示状态,可以设置不同的显示样式,代码↓

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
    <head>
        <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
        <title>Document</title>
        <style type="text/css">
            *{
                margin: 0;
                padding: 0;
            }
            /*链接颜色蓝色*/
            a:link{
                color: blue;
            }
            /*点击链接一次后刷新界面的状态 链接颜色紫色*/
            a:visited{
                color: purple;
            }
            /*鼠标指针悬停在链接上状态 链接颜色红色*/
            a:hover{
                color: red;
            }
            /*点住链接不撒手时状态 链接颜色绿色*/
            a:active{
                color: green;
            }
        </style>
    </head>
    <body>
        <a href="http://www.baidu.com">点击转到百度</a>
    </body>
    </html>
    View Code

    效果图脑补一下就好。

    这四个状态是根据用户的动作产生变化,动作未发生 ,对应的样式也不会加载出来。

    如:.box 这个选择器,给他添加的样式是工作人员手动添加的,在网页加载时这些样式会立即加载。

    a的四个状态里 例如:a:hover,它添加的是用户行为对应的状态属性,这些样式在加载网页时不会立即加载,只有用户行为触发了这种状态时,这些样式才会被加载。

    :hover 这就叫做伪类        这个选择器与类选择器权重一样。

    2、a标签四个状态的书写顺序

    a的四个伪类都有自己的权重,权重相同,根据书写顺序不同,会有层叠效果。代码↓

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
    <head>
        <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
        <title>Document</title>
        <style type="text/css">
            *{
                margin: 0;
                padding: 0;
            }
            a:link{
                color: blue;
            }
            a:hover{
                color: red;
            }
            a:active{
                color: green;
            }
            a:visited{
                color: purple;
            }
        </style>
    </head>
    <body>
        <a href="http://www.baidu.com">点我进百度</a>
    </body>
    </html>
    View Code

    我把visited放到最下面,当你第一次加载点击连接的时候,这4个效果都会正常出现,当你第二次加载时,你会发现悬停、点击时候的链接颜色效果都被visited层叠掉,也就是无论你怎么弄,这个链接就是紫色。

    所以这四个状态的书写顺序是:link,visited,hover,active

    记住顺序:爱恨准则 Love hate

     3、实际应用

    a标签是一个行内标签,不能设置宽高。

    a标签的一部分文本属性不能继承父级:color、text-decoration。代码↓

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
    <head>
        <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
        <title>Document</title>
        <style type="text/css">
            *{
                margin: 0;
                padding: 0;
            }
            body{
                font-size: 30px;
                color: #333;
                line-height: 50px;
                font-family: "微软雅黑";
                font-weight: bold;
                font-style: italic;
                text-indent: 2em;
                text-decoration: none;
                text-align: center;
            }
            div{
                width: 200px;
                height: 50px;
                border: 1px solid #000;
            }
        </style>
    </head>
    <body>
        <div>
            <a href="http://www.baidu.com">点我进百度</a>
        </div>
    </body>
    </html>
    View Code

    效果图↓

     

    如果设置a标签的文字样式,color、text-decoration样式不能靠继承,只能单独设置。

    a四个状态中:link和visited状态一般是一样的样式。代码↓

        <title>Document</title>
        <style type="text/css">
            *{
                margin: 0;
                padding: 0;
            }
            body{
                font-size: 30px;
                color: #333;
                line-height: 50px;
                font-family: "微软雅黑";
                font-weight: bold;
                font-style: italic;
                text-indent: 2em;
                text-decoration: none;
                text-align: center;
            }
            div{
                width: 200px;
                height: 50px;
                border: 1px solid #000;
            }
            a:link,a:visited{
                color: #333;
                text-decoration: none;
            }
            a:hover{
                color: red;
                text-decoration: underline;
            }
        </style>
    </head>
    <body>
        <div>
            <a href="http://www.baidu.com">点我进</a>
        </div>
    </body>
    </html>
    View Code

    效果图↓

         

    实际中除了color、text-decoration其他的文本样式都可以靠继承,或者都写在a选择器里,a盒子的内容也写在a标签选择器内。默认样式可以给四个状态都设置成一样的,然后谁发生变化就单独给谁设置伪类。

    四个状态全部设置一样的:用a标签选择器。谁不一样的话就添加伪类单独设置,注意书写位置顺序。代码↓

            a{/*表示四个伪类的初始值都是以下的样式*/
                color: #333;
                text-decoration: none;
            }
            a:hover{/*hover需要设置另一个样式,所以把它拿出来单独设置*/
                color: red;
                text-decoration: underline;
            }

     练习↓

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
    <head>
        <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
        <title>Document</title>
        <style type="text/css">
            *{
                margin: 0;
                padding: 0;
            }
            body{
                font-size: 30px;
                color: #333;
                line-height: 50px;
                font-family: "微软雅黑";
                font-weight: bold;
                text-decoration: none;
                text-align: center;
            }
            a{
                display: block;
                width: 200px;
                height: 50px;
                border: 1px solid #000;
                color: #333;
                text-decoration: none;
                background: pink;
            }
    
            a:hover{
                color:#fff;
                text-decoration: underline;
                background: green; 
            }
        </style>
    </head>
    <body>
        <a href="#">点我跳转</a>
    </body>
    </html>
    View Code

    效果图↓

    鼠标悬停前→               鼠标悬停后→

     

  • 相关阅读:
    97. Interleaving String
    96. Unique Binary Search Trees
    95. Unique Binary Search Trees II
    94. Binary Tree Inorder Traversal
    odoo many2many字段 指定打开的form视图
    docker sentry 配置文件位置
    postgres 计算时差
    postgres 字符操作补位,字符切割
    postgres判断字符串是否为时间,数字
    odoo fields_view_get
  • 原文地址:https://www.cnblogs.com/StevenSunYiwen/p/11590232.html
Copyright © 2011-2022 走看看