JSFiddle - React, Tailwind, and code Playground
by Hugo Carneiro
HTML
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<div class="form-group clearfix">
<div class="col-xs-12 control-label">
<label>Do you want to enable a tap action?</label>
</div>
<div class="col-xs-12">
<div class="radio radio-icon">
<input type="radio" id="pinch" name="tap_action" value="pinch">
<label for="pinch">
<span class="check"><i class="fa fa-circle"></i></span> Enable pinch-to-zoom
</label>
</div>
<div class="radio radio-icon">
<input type="radio" id="link" name="tap_action" value="link">
<label for="link">
<span class="check"><i class="fa fa-circle"></i></span> Enable other tap actions
</label>
</div>
</div>
</div>
<div class="link-actions">
<p>SHOW LINK PROVIDER</p>
</div>
CSS
.link-actions {
display: none;
}
/* DO NOT COPY THIS BIT DOWN */
/* ALREADY PART OF STUDIO-UI */
.radio.radio-icon input[type="radio"] {
display: none;
}
.radio.radio-icon label {
padding-left: 25px;
color: #333;
}
.radio.radio-icon label > span.check {
position: absolute;
left: 0;
width: 20px;
height: 20px;
border: 1px solid #e4e9eb;
background-color: #FFFFFF;
padding-left: 0;
margin-bottom: 0;
text-align: center;
border-radius: 50%;
}
.radio.radio-icon label > span.check {
border-radius: 50%;
}
.radio.radio-icon input[type="radio"]:checked + label > span.check {
background-color: #00abd1;
}
.radio.radio-icon label > span.check > i.fa {
display: none;
position: absolute;
left: 0;
right: 0;
top: 0;
line-height: 18px;
font-size: 10px;
}
.radio.radio-icon input[type="radio"]:checked + label span.check > i.fa {
display: block;
color: #FFF;
}
JavaScript
$('input[name="tap_action"]').on('change', function() {
if ( $(this).val() === "link" ) {
$('.link-actions').addClass('show');
} else {
$('.link-actions').removeClass('show');
}
});