设置复选框样式

时间:2019-07-09 04:16:09

标签: javascript html css google-chrome-extension

我正在创建一个待办事项列表,允许用户添加和检查任务。我想知道是否有一种方法可以为用户添加的每个任务设置实际的复选框样式。

编辑:因此,我已经编辑了CSS代码,但仍不确定自己在做什么错。

$(() => {
  $('input').on('keypress', function(e) {
    if (e.keyCode == 13) {
      const newTask = $(this).val();
      if (newTask) {
        var li = $("<li><input type='checkbox' id='newtasklist' class='right-margin' <label>" + newTask + "</label></li>");
        $('#tasksUL').append(li);
        $(this).val("");
      }
    }
  });

  $('body').on('click', ':checkbox', function(e) {
    $(this).parent().toggleClass('selected');
  });
});
.selected { 
  text-decoration: line-through; 
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.0/jquery.min.js"></script>
<input type="text" name="newtask" value="" spellcheck="false" placeholder="New Task" id="newtask">
<ul id="tasksUL">
  <li><input type="checkbox" id="newtaskitem" class="right-margin"><label>Welcome to Droplet's 'Tasks' feature!</label></li>
</ul>

我尝试过的

CSS代码:

.selected { 
  text-decoration: line-through; 
  font-size: 20px;
}
.right-margin{
  margin-right: 30px;
}

input[id="newtasklist"] {
  background: url('checked.png');
  background-size: 100%;
}

1 个答案:

答案 0 :(得分:1)

background-size 指定背景图片的大小,相反,您可以尝试 font-size

$(() => {
  $('input').on('keypress', function(e) {
    if (e.keyCode == 13) {
      const newTask = $(this).val();
      if (newTask) {
        var li = $("<li><input type='checkbox' id='newtasklist' class='right-margin' <label>" + newTask + "</label></li>");
        $('#tasksUL').append(li);
        $(this).val("");
      }
    }
  });

  $('body').on('click', ':checkbox', function(e) {
    $(this).parent().toggleClass('selected');
  });
});
.selected { 
  text-decoration: line-through; 
  background: url('https://images.pexels.com/photos/248797/pexels-photo-248797.jpeg?auto=compress&cs=tinysrgb&dpr=1&w=500');
  font-size: 20px;
}
.right-margin{
  margin-right: 30px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.0/jquery.min.js"></script>
<input type="text" name="newtask" value="" spellcheck="false" placeholder="New Task" id="newtask">
<ul id="tasksUL">
  <li><input type="checkbox" id="newtaskitem" class="right-margin"><label>Welcome to Test 'Tasks' feature!</label></li>
</ul>