CSS 居中文本和可调尺寸

发布于 2024-11-26 03:31:09 字数 1125 浏览 0 评论 0原文

我正在尝试在 css 中制作一个“优先级标记”。我有几个问题。 首先:文本根本没有合理居中。 第二:我希望宽度(至少)随着文本的长度动态变化。两者都可行吗?

结果: 在此处输入图像描述

我对如何选择适合这种情况的字体的理解超出了我目前的 CSS 技能。如果这已经完成了,我真的不想重新发明这个......

.box {
    border-color: orange;
    border-style: solid;
    text-align: center;
    border-width: 1px 0px 1px 1px;
    margin: 0px 8px 0px 0px;
    background-color: yellow;
    padding-right: 8px;
    position: relative;
    height:14px;
    width:20px;
}
.arrow {
    border-color: transparent transparent transparent orange;
    border-style: solid;
    border-width: 8px;
    position: absolute;
    right: -15px;
    bottom: -1px;
    height:0;
    width:0;
}
.arrow2 {
    border-color: transparent transparent transparent yellow;
    border-style: solid;
    border-width: 7px;
    position: absolute;
    right: -12px;
    bottom: 0px;
    height:0;
    width:0;
}

    <div class="{style.box}">42
        <div class="{style.arrow}"></div>
        <div class="{style.arrow2}"></div>
    </div>

I'm trying to make a "priority marker" in css. I have a couple of issues. First: the text is not centered reasonably at all. Second: I'd prefer the width (at least) to change dynamically with the length of the text. Is either doable?

result: enter image description here

My understanding of how to pick a font that fits with in this context is beyond my current css skills. If this has been done I don't really care to reinvent this...

.box {
    border-color: orange;
    border-style: solid;
    text-align: center;
    border-width: 1px 0px 1px 1px;
    margin: 0px 8px 0px 0px;
    background-color: yellow;
    padding-right: 8px;
    position: relative;
    height:14px;
    width:20px;
}
.arrow {
    border-color: transparent transparent transparent orange;
    border-style: solid;
    border-width: 8px;
    position: absolute;
    right: -15px;
    bottom: -1px;
    height:0;
    width:0;
}
.arrow2 {
    border-color: transparent transparent transparent yellow;
    border-style: solid;
    border-width: 7px;
    position: absolute;
    right: -12px;
    bottom: 0px;
    height:0;
    width:0;
}

    <div class="{style.box}">42
        <div class="{style.arrow}"></div>
        <div class="{style.arrow2}"></div>
    </div>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

柳若烟 2024-12-03 03:31:09

将其添加到 .box:

font-size:12px;
font-family:serif;
display:inline-block;
padding-left:5px;

并删除其宽度规则。

Add this to .box:

font-size:12px;
font-family:serif;
display:inline-block;
padding-left:5px;

And remove its width rule.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文