JSFiddle - React, Tailwind, and code Playground

HTML

<br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
        <br/>
<button onclick="javascript:scrollFunc();">Click me</button>
<div id="myDiv">
    <p>Lorem ipsum vide latine eripuit ut vel, nominati philosophia no ius. Sumo noluisse imperdiet ei usu. Vivendum adipiscing ius te, qui quot hendrerit cu. Nemore voluptua te qui, eu vix senserit omittantur, qui homero commodo ne. Quaeque invidunt explicari an sit, eu vis nihil graecis, no ius tation numquam. Agam latine referrentur his ea, pro no justo laoreet mediocrem.</p>
    
    <p id="est">Est officiis argumentum elaboraret no, ludus tantas oporteat cu his. Pro cu novum iudicabit conceptam. Oportere democritum eum id, mea persius blandit an, et duo impedit albucius. Ignota oblique delicatissimi ea eum, cum probo modus diceret ei. Eu cum dicat nostrud constituto.</p>
    
    <p>Saepe tempor eloquentiam in ius. Ea usu amet possim perfecto, at gubergren aliquando signiferumque sit, has in munere splendide. Cu eum erant verterem deseruisse. Eu vim ipsum expetendis, ceteros vituperatoribus ea per, nam lorem copiosae et. Facete iudicabit reformidans ut nec, veniam constituam per te.</p>
    
    <p>Id summo alienum dissentiunt mel, ridens bonorum an pro, falli vidisse reprehendunt ad qui. Cu vis sumo oblique euripidis. Eos te veritus persecuti scriptorem. Mei ad natum facilisis, mel choro repudiandae consequuntur ad. Harum tation pericula ne sed, mei viris verterem deseruisse ea.</p>
    
    <p>Liber decore partem cu his, usu ea prompta fabulas incorrupte. Convenire molestiae hendrerit vix ad,...

CSS

#myDiv { height: 100px; width: 300px; overflow: scroll;}

p { padding: 10px 0px; }

JavaScript

function scrollFunc() {
    var est = document.getElementById('est');
    var docPos = f_scrollTop();
    est.scrollIntoView();
    window.scrollTo(0,docPos);
}

function f_scrollTop() {
    return f_filterResults (
        window.pageYOffset ? window.pageYOffset : 0,
        document.documentElement ? document.documentElement.scrollTop : 0,
        document.body ? document.body.scrollTop : 0
    );
}

function f_filterResults(n_win, n_docel, n_body) {
    var n_result = n_win ? n_win : 0;
    if (n_docel && (!n_result || (n_result > n_docel)))
        n_result = n_docel;
    return n_body && (!n_result || (n_result > n_body)) ? n_body : n_result;
}