JSFiddle - React, Tailwind, and code Playground
HTML
<script src="https://code.jquery.com/jquery-2.2.4.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/1.0.26/vue.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue-resource/0.9.3/vue-resource.js"></script>
<div class="container">
<div class="row">
<div class="col-md-12">
<h1> Dashboard </h1>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="left-graph">
<h4>Data</h4>
</div>
</div>
<div class="col-md-6">
<div class="right-graph">
<h4>Feeling</h4>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<h2> Feedback </h2>
</div>
</div>
<script type="x/template" id="dashboard-popup-template">
<div class="modal-mask" v-show="show" transition="modal">
<div class="modal-wrapper">
<div class="modal-container">
<div class="modal-header">
<slot name="header">
default header
</slot>
</div>
<div class="modal-body">
<slot name="body">
default body
</slot>
</div>
</div>
</div>
</div>
</script>
<div class="row">
<div class="col-md-12">
<table class="table table-striped table-hover bug-table">
<thead>
<tr>
<th>DATE</th>
<th>TYPE</th>
...
CSS
body {
font-family: 'Roboto', sans-serif;
}
h6 {
margin: 0 !important;
}
/* Popup styling Error Submit */
.modal-mask {
position: fixed;
z-index: 9998;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, .5);
display: table;
transition: opacity .3s ease;
}
.modal-wrapper {
display: table-cell;
vertical-align: middle;
}
.modal-container {
width: 800px;
margin: 0px auto;
padding: 5px 20px;
background-color: #ffffff;
border-radius: 10px;
box-shadow: 0 2px 8px rgba(0, 0, 0, .33);
transition: all .3s ease;
font-family: Helvetica, Arial, sans-serif;
}
.modal-header {
padding: 0 !important;
border-bottom: 3px solid #e5e5e5;
}
.modal-header h3 {
color: #000;
font-size: 15px;
font-weight: bold;
margin-bottom: 10px;
margin-top: 10px;
}
.modal-header h3 span {
color: red;
font-weight: lighter;;
}
.modal-header h3 img {
right: 575px;
position: absolute;
top: 401px;
height: 26px;
cursor: pointer;
}
.modal-body {
margin: 20px 0;
border: 3px solid #e5e5e5;
border-radius: 4px;
padding: 20px;
}
.modal-body p {
color: #000;
line-height: 16px;
margin: 0;
font-weight: 300;
}
.modal-default-button {
background-color: #fff;
padding: 5px 30px;
font-size: 12px;
border-radius: 4px;
color: #3d8488;
font-weight: bold;
border: 2px solid #3d8488;
margin-top: 10px;
}
.modal-footer {
padding: 15px;
text-align: center;
}
.modal-enter, .modal-leave {
opacity: 0;
}
.modal-enter .modal-container,
.modal-leave .modal-container {
-webkit-transform: scale(1.1);
transform: scale(1.1);
}
#show-modal {
position: fixed;
right: 0px;
top: 40%;
background-color: #33a0b9;
height: 200px;
width: 50px;
color: #fff;
}
.cross-popup {
float: right;
margin-top: -25px;
font-size: 15px;
margin-right: -35px;
cursor: pointer;
}
.rating-popup {
text-align: center;
color: #fff;
}
.popup-radio {
margin-right:...
JavaScript
Vue.component('modal', {
template: '#dashboard-popup-template',
props: {
show: {
type: Boolean,
required: true,
twoWay: true
}
}
})
new Vue({
el: '.activate-popupmodal-tr',
data: {
showmodal: false
}
})