JSFiddle - React, Tailwind, and code Playground

HTML

<div class="wrapper cf">
    <div>1</div>
    <div>2</div>
    <div>3</div>
    <div class="t">4</div>
</div>

CSS

/* -- normalize -- */
* { margin: 0 ; padding: 0 ; border: 0 none ; }
html, body { font-family: arial, sans-serif ; font-size: 100% ; }

/* -- clearfix -- */
.cf:before, .cf:after { content: " " ; display: table ; }
.cf:after { clear: both ; }

/* -- layout -- */
.wrapper div {
    float: left ;
    margin: 0.5em ;
    width: 7em ;
    height: 7em ;
    font-size: 1.5em ;
    text-align: center ;
    background-color: lightblue ;
    cursor: pointer ;
    
    -webkit-transition: opacity .2s linear ;
    -moz-transition: opacity .2s linear ;
    -o-transition: opacity .2s linear ;
    transition: opacity .2s linear ;
}

.wrapper div:hover + .t {
    opacity: .5 ;
}