提问者:小点点

向链接内部的div添加焦点状态


我正在尝试使链接有一个围绕整体的焦点状态。container-covid-alert div,当链接被选项卡打开时,我确信这一定是可能的?以下2个选择器不工作。

null

.container-covid-alert:focus {
                outline: solid 3px #FFAD16;
            }
            .container-covid-alert a:focus {
                outline: solid 3px #FFAD16;
            }
            .container-covid-alert {
                background-color: #206497 !important;
                color: #FFFFFF;
                padding-top: 10px;
                padding-bottom: 10px;
                display: block;
                flex-flow: row wrap;
                align-items: center;
                align-content: center;
                justify-content: flex-start;
                font-size: 1.1rem;
            }
            .container-covid-alert a {
                color: #FFFFFF;
            }
            .covid-inner {
                margin: auto;
                width: 1170px;
            }
<a id="covid-banner-link" title="Coronavirus" class="sys_16" href="/">
    <div class="container-covid-alert">
    <div class="covid-inner">
    <p>Coronavirus (COVID-19)updates and advice.</p>
    </div>
    </div>
    </a>

null


共1个答案

匿名用户

超链接在链接内联元素时会折叠。

解决方案是使其像具有display:block;的块元素一样工作。

这样,您就可以将:focus状态添加到超链接本身,使其变得非常简单。

另外,橙色对焦指示器的对比度不够高--它只有1.86:1,你需要3:1作为最小值,所以你可能想要改变它。

null

#covid-banner-link{
   display:block;
}

#covid-banner-link:focus {
   outline: solid 3px #FFAD16;          
}

.container-covid-alert {
                background-color: #206497 !important;
                color: #FFFFFF;
                padding-top: 10px;
                padding-bottom: 10px;
                display: block;
                flex-flow: row wrap;
                align-items: center;
                align-content: center;
                justify-content: flex-start;
                font-size: 1.1rem;
            }
            .container-covid-alert a {
                color: #FFFFFF;
            }
            .covid-inner {
                margin: auto;
                width: 1170px;
            }
<a id="covid-banner-link" title="Coronavirus" class="sys_16" href="/">
<div class="container-covid-alert">
<div class="covid-inner">
<p>Coronavirus (COVID-19)updates and advice.</p>
</div>
</div>
</a>