JSFiddle - React, Tailwind, and code Playground

by mlms13

HTML

<div id="top">
    <form action="#" id="addTask">
        <input type="text" name="addItem" id="addItem" />
    </form>
</div>
<div id="middle">
    <div class="item">
        <input type="checkbox" /><span>Go Running</span>
    </div>
    <div class="item">
        <input type="checkbox" /><span>Push-ups</span>
    </div>
    <div class="item">
        <input type="checkbox" /><span>Sit-ups</span>
    </div>
    <div class="item">
        <input type="checkbox" /><span>Litter</span>
    </div>
    <div class="item">
        <input type="checkbox" /><span>Shave</span>
    </div>
    <div class="item">
        <input type="checkbox" /><span>Shower</span>
    </div>
    <div class="item">
        <input type="checkbox" /><span>Check Ask Ubuntu</span>
    </div>
    <div class="item">
        <input type="checkbox" /><span>Set Time Trial</span>
    </div>
    <div class="item">
        <input type="checkbox" /><span>Dishes</span>
    </div>
    <div class="item">
        <input type="checkbox" /><span>Feed the Cats</span>
    </div>
    <div class="item">
        <input type="checkbox" /><span>64 oz of Water</span>
    </div>
</div>

CSS

body {
    font-family: sans-serif;
    margin: 0;
    overflow: hidden;
    padding: 0;
}
#top {
    background: #777;
    border-bottom: 1px solid #555;
    border-top: 1px solid #ddd;
    box-shadow: 0 2px 4px rgba(0,0,0,0.3);
    margin-bottom: 12px;
    padding: 10px;
}
#top input {
    border: 1px solid #555;
    border-radius: 4px;
    box-shadow: inset 1px 1px 4px rgba(0,0,0,0.5);
    margin: -4px;
    padding: 4px;
    -webkit-background-clip: padding-box;
    width: 100%;
}
.item {
    border-bottom: 1px solid #ddd;
    padding: 4px;
}
.item.hover {
    background: #e2f7ff;
}
input[type=checkbox] {
    margin-right: 12px;
    visibility: hidden;
}
.hover input[type=checkbox] {
    visibility: visible;
}
.completed {
    color: #bbb;
    text-decoration: line-through;
}

JavaScript

$('#addTask').submit(function () {
    var value = $('#addItem').val(),
        task = '<div class="item"><input type="checkbox" /><span>' + value + '</span></div>';
    $('#addItem').val('');
    $('#middle').append(task);
    return false;
});

$('#middle').delegate('input[type=checkbox]', 'click', function () {
    $(this).next('span').toggleClass('completed');
}).delegate('.item', 'hover', function () {
    $(this).toggleClass('hover');
});