css 对号 单选框选中的对号

<div class="check-style-unequal-width"></div>

 

.check-style-unequal-width {

width: 8px;

height: 16px;

border-color: #009933;

border-style: solid;

border-width: 0 3px 5px 0;

transform: rotate(45deg);

}

  • 设置宽度和高度,得出一个矩形效果,并且矩形中没有内容

  • 设置相邻 border 的样式,得到对号的大体轮廓

  • 使用旋转属性,成功得到对号

  • 注意事项

    行级元素直接设置宽度和高度没有用,需要设置其 display 使其变为块级元素。例如:span 需要设置 display 为 inline-block 才能适用于本例效果

    可以根据实际需求调整元素宽度和高度

    可以根据实际需求设置不同的 border,以及相邻 border 的宽度

    可以对此效果做简单的修改,作用于伪元素 ::before 和 ::after。可参考 ::before & ::after

原文链接:https://blog.csdn.net/u011848617/article/details/82824054

 

 

.triangle {
        width: 0;
        height: 0;
        border-left: 22px solid transparent;
        /* 左边透明边框 */
        border-right: 0 solid;
        /* 右边透明边框 */
        border-bottom: 22px solid #000;
        /* 底部黑色边框 */
    }
<div class="triangle"></div>
 
 
单选框选中的对号
 
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<style>
    /* 隐藏默认的单选按钮 */
    input[type="radio"] {
        display: none;
    }

    /* 创建一个自定义的单选按钮样式 */
    input[type="radio"]+label {
        position: relative;
        display: inline-block;
        padding: 10px 20px;
        margin: 0 10px 0 0;
        border: 2px solid #ddd;
        border-radius: 4px;
        cursor: pointer;
        transition: all 0.3s ease;
    }

    /* 当单选按钮被选中时,改变边框和字体颜色 */
    input[type="radio"]:checked+label {
        border-color: red;
        color: red;
    }

    input[type="radio"]:checked+label::after {
        content: '';
        position: absolute;
        width: 0;
        height: 0;
        border-left: 22px solid transparent;
        /* 左边透明边框 */
        border-right: 0 solid;
        /* 右边透明边框 */
        border-bottom: 22px solid red;
        right: 0;
        bottom: 0;
        /* 底部黑色边框 */
    }

    input[type="radio"]:checked+label::before {
        content: '';
        position: absolute;
        right: 2px;
        bottom: 3px;
        z-index: 100;
        width: 3px;

        height: 7px;

        border-color: #fff;

        border-style: solid;

        border-width: 0 2px 2px 0;

        transform: rotate(45deg);
    }


    .triangle {
        width: 0;
        height: 0;
        border-left: 22px solid transparent;
        /* 左边透明边框 */
        border-right: 0 solid;
        /* 右边透明边框 */
        border-bottom: 22px solid #000;
        /* 底部黑色边框 */
    }

    .check-style-unequal-width {

        width: 8px;

        height: 16px;

        border-color: #fff;

        border-style: solid;

        border-width: 0 3px 3px 0;

        transform: rotate(45deg);

    }
</style>

<body>

    <input type="radio" id="radio1" name="radio-group" />
    <label for="radio1">选项一</label>

    <input type="radio" id="radio2" name="radio-group" />
    <label for="radio2">选项二</label>
    <div class="triangle"></div>
    <div class="check-style-unequal-width"></div>
</body>

</html>

 

posted @ 2023-03-13 15:14  未几  阅读(120)  评论(0编辑  收藏  举报