Edit line thickness of CSS 'underline' attribute

前端 未结 11 654
日久生厌
日久生厌 2020-12-02 07:35

Since you can underline any text in CSS like so:

h4 {
    text-decoration: underline;
}

How can you also then edit the \'line\' that is drawn

11条回答
  •  爱一瞬间的悲伤
    2020-12-02 08:13

    You can do it with a linear-gradient by setting it to be like this:

    h1, a {
        display: inline;
        text-decoration: none;
        color: black;
        background-image: linear-gradient(to top, #000 12%, transparent 12%);
    }

    I'm underlined

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

    And, yes, you can change it like this...

    var m = document.getElementById("m");
    m.onchange = u;
    function u() {
        document.getElementById("a").innerHTML = ":root { --value: " + m.value + "%;";
    }
    h1, a {
        display: inline;
        text-decoration: none;
        color: black;
        background-image: linear-gradient(to top, #000 var(--value), transparent var(--value));
    }

    I'm underlined

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

提交回复
热议问题