Joel
Joel

Reputation: 2688

CSS Centering text & adjustable size

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>

Upvotes: 2

Views: 851

Answers (1)

John Stimac
John Stimac

Reputation: 5493

Add this to .box:

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

And remove its width rule.

Upvotes: 3

Related Questions