Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Custom List Bullets with :before

I'm creating a form which has the following section:

enter image description here

My approach for the Activities and Objects sections was to create those options using a list.

<div class="formBlock">
    Activities
    <ul id="coloringAct">
        <li>Activity Type A</li>
        <li>Activity Type B</li>
        <li>Activity Type C</li>
    </ul>
</div>

I'd like to be able to create the colored blocks as if they were the bullets of the list, either using a custom list-style (not images), or using the :before selector. Essentially, something like this:

#formTable tr td .formBlock li {
    list-style:none;
    margin:0;
    padding:0;
    border-top:1px solid #DDD;
}
#formTable tr td .formBlock li:before {
    content: "";
    width:20px;
    height:20px;
    background:red;
}

How can I accomplish something this using CSS? This isn't working.

HERE'S A FIDDLE.

like image 634
Jon Avatar asked Dec 10 '12 16:12

Jon


1 Answers

tweak on this a bit:

formTable tr td .formBlock li:before {
    content: "";
    width:20px;
    height:20px;
    background:red;
    display: block;
    float: left;
    margin-right: 5px;
}

why?

display: block allows you to see the square

float: left avoid it sending the text on the next line

margin-right: avoid text being too close to the square

you have to tweak a lot to fit your style and situation :) but the key element was the "display block" missing

like image 168
Samuele Mattiuzzo Avatar answered Sep 23 '22 02:09

Samuele Mattiuzzo