JSFiddle - React, Tailwind, and code Playground
HTML
<div class="container">
zoom:50%
<div class="boxWithArrow">
</div>
<div class="boxWithArrow zoom50">
</div>
</div>
<div class="container">
transform: scale(0.5);
<div class="boxWithArrow">
</div>
<div class="boxWithArrow scale50">
</div>
</div>
<div class="container">
transform: scale(0.5);
transform-origin: 0 0;
<div class="boxWithArrow">
</div>
<div class="boxWithArrow scale50-with-same-origin">
</div>
</div>
CSS
.container {
display:block;
clear:both;
height: 100px;
}
.boxWithArrow {
padding: 10px;
border: solid 1px black;
width: 50px;
height: 50px;
position:absolute;
left: 50px;
}
.boxWithArrow:after {
content: '';
position: absolute;
left: 100%;
width: 0;
height: 0;
border-left: 8px solid black;
border-top: 8px solid transparent;
border-bottom: 8px solid transparent;
top: 10px;
}
.zoom50 {
zoom: 0.5;
zoom: 50%;
-ms-zoom: 50%;
}
.scale50 {
-webkit-transform: scale(0.5);
-moz-transform: scale(0.5);
transform: scale(0.5);
}
.scale50-with-same-origin {
-webkit-transform: scale(0.5);
-moz-transform: scale(0.5);
transform: scale(0.5);
-webkit-transform-origin: 0 0;
-moz-transform-origin: 0 0;
transform-origin: 0 0;
}