用于在每个列表项之前显示带有复选框的缩进有序列表的CSS

时间:2012-12-06 15:09:19

标签: html css html-lists

我不确定这是否可行,但我正在尝试在每个列表项的前面设置一个带有复选框的有序列表,如下所示:

  1. 我希望这个项目编号左边有一个复选框,并包装到句子中的第一个单词,而不是项目编号。
  2. 与项目编号1相同的交易,需要项目编号左侧的复选框并包装到句子中的第一个单词。
  3. 我已经使用this question找出了缩进内容,但无法让复选框显示在与<li>相同的行上。有没有办法做到这一点?

    这是jsFiddle I've been messing with

3 个答案:

答案 0 :(得分:6)

http://jsfiddle.net/9v97V/2/

你可以这样做。您将输入放在列表项中,然后将其绝对定位,使其显示在列表项之前。

最相关的CSS:

li input
{
    position: absolute;
    margin-left: -40px;
    margin-top: 5px;
}

答案 1 :(得分:1)

我基于你的http://jsfiddle.net/3VESY/1/

制作了一个新的jsFiddle

基本上我把文本放在跨度(也可以是div)和输入上的浮点数上。跨度有一个左边的填充来创建缩进。 希望这是你需要的吗?

ol {
    list-style-type:decimal;
    margin-left:20px;
}

ol li span {
    display:block;
    padding-left:30px;
}
input
{
    float:left;
}

编辑更新的小提琴:http://jsfiddle.net/3VESY/1/以添加数字

答案 2 :(得分:0)

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <style>
            form{
                border: 2px solid #f1f1f1;
                text-align: left;
                }
    
            ol{
                margin-left:40%; 
                font-weight:bold;   
            }
        </style>
    </head>
    
    <body>
    
        <div class="container">
            <form action="/action.php">
                <ol type="A" style="color: red" >
                    <li><p >CSE</p></li>
                    <ol type="i" style="margin-left:-13%; color: blue">
                        <li>
                            <input type="checkbox" id="cb1" name="op1">
                            <label for="cb1"> Artificial Intelligence</label>
                        </li><br>
                        <li>
                            <input type="checkbox" id="cb2" name="op2">
                            <label for="cb2">Machine Learning</label>
                        </li>   
                    </ol><br>
                    <li><p>ECE</p></li>
                    <ol type="A" style="margin-left:-13%; color: blue">
                        <li>
                            <input type="checkbox" id="cb3" name="op3">
                            <label for="cb3">Embedded Systems</label>
                        </li><br>
                        <li>
                            <input type="checkbox" id="cb4" name="op4">
                            <label for="cb4">IOT</label>
                        </li><br>
                    </ol>
                </ol>       
            </form>
        </div>
        
    </body>
</html>