JSFiddle - React, Tailwind, and code Playground

by bateast

HTML

<body ng-app>
    <div class="box" ng-init="active = false">
        <div class="icon"></div>
        <div class="btn" ng-class="{on:active}" 
        ng-click="active = !active">Break Point</div>
    </div>
</body>

CSS

.box {
    position: relative;
    overflow: hidden;
    height: 60px;
}
.icon {
    width: 20px;
    height: 20px;
    background-color: #ccc;
    border-radius: 50%;
    bottom: 0;
    position: absolute;
    z-index: 10;
    transition: all ease-in-out 0.2s;
    -webkit-transform: scale(0.8);    
}
.icon:hover {
    background-color: #666;
    -webkit-transform: scale(1);
}
.btn {
    position: absolute;
    left: 0;
    bottom: 0;
    margin-left: 25px;
    line-height: 20px;
    transition: all ease-in-out 0.2s;
    -webkit-transform-origin: -15px 10px;
    -webkit-transform: rotate(90deg);
}
.icon:hover + .btn,
.btn:hover {
    -webkit-transform: rotate(-20deg);
}
.btn:hover {
    cursor: pointer;
    text-shadow: 0 0 5px #999;
}
.btn.on {
    color: #bd4247;
    text-shadow: 0 0 5px #bd4247;
    -webkit-transform: rotate(-20deg);
}