JSFiddle - React, Tailwind, and code Playground

by ian_smithz

HTML

<div class="ls__banner--container">
                  		<div class="ls__banner">
						<div class="cat-image-dewaltcombifc">

				<a href="//www.screwfix.com/p/dewalt-dcd778l2t-sfgb-18v-3-0ah-li-ion-xr-brushless-cordless-combi-drill/8395v" class="banner banner--border banner--var1 banner--level3" title="Exclusive Dewalt 18V 3.0Ah Li-ion Brushless Combi Drill - view more info">
					<div class="banner__wrapper" style="background: url() no-repeat">
						<div class="banner__content-wrapper">
							<div class="banner__content">
								<p class="banner__deal">
									<span class="banner__text--medium">Exclusive</span>
								</p>
								<p class="banner__text">
									<span>Dewalt 18V 3.0Ah Li-ion Brushless Combi Drill</span>
								</p>
							</div>
						</div>

						

								<div class="banner__img-align">
									<img src="//www.screwfix.com/images/CAT131/assets/gfx/powertools_8395V_lg.png" class="banner__img swap" data-src-small="//www.screwfix.com/images/CAT131/assets/gfx/powertools_8395V_sm.png" data-src-medium="//www.screwfix.com/images/CAT131/assets/gfx/powertools_8395V_md.png" data-src-large="//www.screwfix.com/images/CAT131/assets/gfx/powertools_8395V_lg.png" alt="DeWalt DCD778L2T-SFGB 18V 3.0Ah Li-Ion XR Brushless Cordless Combi Drill">
								</div>
								

	<input id="analytics_prodPrice_8395V" type="hidden" value="125.0">

	
										<div class="price-point pp--pound">
											<div class="pp__tmsg">ONLY</div>
											<div class="pp__price">
												<sup class="pp__pnd">£</sup><span class="pp_numbs">149<span class="pp_vat">INC VAT</span></span><sup class="pp__pnc">.99</sup>
											</div>
											
										</div>
									
					</div> 
				</a>
			
</div> 

	<script>				
		var head = document.getElementsByTagName("head")[0];	
		var div = document.createElement('div');
		div.innerHTML = "<style>    /*sml-only*/  @media only screen and (max-width: 40em) {\t  \t  .cat-image-dewaltcombifc .banner--level3 .banner__wrapper...

CSS

.ib {
    overflow: hidden;
    text-align: center
}

.ib_img {
    margin: 0 auto;
    max-width: 100%
}

.banner {
    display: block;
    margin-right: -.3em;
    margin-bottom: 15px;
    margin-left: -.3em;
    border: 1px solid #d1d1d1;
    text-decoration: none;
    position: relative;
    overflow: hidden;
    color: #636363;
    height: 376px;
    background-color: #fff;
    box-shadow: 0 4px 6px -2px rgba(0,0,0,.2)
}

.ls__banner .banner {
    margin-right: 0;
    margin-left: 0
}

.banner:focus,.banner:hover {
    color: #636363;
    text-decoration: none
}

.banner.banner--var6 {
    margin-bottom: 0;
    border: 0;
    background-color: transparent;
    height: 100%
}

.banner.banner--border {
    border: 12px solid #0053a0
}

@media only screen and (max-width: 40em) {
    .banner.banner--border {
        border-width:6px
    }
}

.banner.banner--border.banner--var4,.banner.banner--border.banner--var8 {
    border-color: #000
}

.banner * {
    padding: 0;
    margin: 0
}

@media only screen and (max-width: 40em) {
    .banner {
        height:205px
    }
}

.banner.banner--level3 {
    height: 192px
}

@media only screen and (max-width: 40em) {
    .banner.banner--level3 {
        height:135px
    }
}

.banner.banner--var5.banner--level3 {
    height: 235px;
    margin-left: .3em;
    margin-right: .3em
}

@media only screen and (max-width: 40em) {
    .banner.banner--var5.banner--level3 {
        height:175px
    }
}

.banner sup {
    font-size: 50%;
    top: -.7em
}

.banner.banner--var7 {
    height: auto
}

.row-wrp--mod .banner.banner--half {
    margin-right: 0;
    margin-left: 0
}

@media only screen and (max-width: 40em) {
    .row-wrp--mod .banner.banner--half {
        margin-right:0
    }
}

a.banner:not([href]),a.banner[href=''],a.banner[href='#'] {
    cursor: default
}

.banner__wrapper {
    margin: 10px;
    overflow: hidden;
    position: relative
}

@media only screen and (max-width: 40em) {
    .banner__wrapper {
       ...