ટેબલ ટેગ વગર CSS નો ઉપયોગ કરીને Div Tag થી કોષ્ટકો સ્ક્રોલ કેવી રીતે બનાવવી

કોષ્ટકનું પ્રતિનિધિત્વ કરવા માટે 'ડિસ્પ્લે' ગુણધર્મનો ઉપયોગ કેવી રીતે કરવો?

નીચેનું કોષ્ટક તમને સમાન તત્વનું પ્રતિનિધિત્વ કરવા માટે ' ટેબલ ' ટૅગ અને અનુરૂપ સપોર્ટેડ CSS પ્રોપર્ટી વચ્ચેનો સંબંધ આપે છે. તેથી, ટેબલ બનાવતી વખતે, તમારે ફક્ત HTML ' ટેબલ ' ટેગને બદલે માત્ર ' div ' ટેગનો ઉપયોગ કરવાની જરૂર છે અને ટેબલ પ્રદર્શિત કરવા માટે અનુરૂપ CSS ઉમેરો.

<ટેબલ> {ડિસ્પ્લે:ટેબલ}
<tr> {પ્રદર્શન: ટેબલ-પંક્તિ}
<thead> {ડિસ્પ્લે: ટેબલ-હેડર-ગ્રુપ}
<tbody> {પ્રદર્શન: કોષ્ટક-પંક્તિ-જૂથ}
<tfoot> {ડિસ્પ્લે: ટેબલ-ફૂટર-ગ્રુપ}
<col> {ડિસ્પ્લે: ટેબલ-કૉલમ}
<colgroup> {ડિસ્પ્લે: ટેબલ-કૉલમ-ગ્રુપ}
<td>, <th> {ડિસ્પ્લે: ટેબલ-સેલ}
<કેપ્શન> {ડિસ્પ્લે: ટેબલ-કેપ્શન}

પગલું 1: ટેબલ માટે માસ્ટર ડિવ બનાવો

HTML

<div class="d-tbl"></div>

CSS

.d-tbl {  
    width: 100%;  
    display: table;  
    border-collapse: collapse;  
}

પગલું 3: ટેબલ કૅપ્શન, હેડર, બૉડી, ફૂટર બનાવો

HTML

<div class="d-tbl">  
    <div class="d-tbl-head"></div>  
    <div class="d-tbl-body">/div>  
    <div class="d-tbl-foot"></div>  
</div>

CSS

.d-tbl-caption{  
    display: table-caption;  
    text-align: center;  
    font-weight: bold;  
}  
.d-tbl-head,  
.d-tbl-foot {  
    display: table-header-group;  
    background-color: white;  
}  
.d-tbl-body {  
    display: table-row-group;  
}

પગલું 3: કોષ્ટક પંક્તિઓ, સેલ, હેડ-સેલ, ફૂટ-સેલ બનાવો

HTML

<div class="d-tbl">  
    <div class="d-tbl-head">  
        <div class="d-tbl-row">  
            <div class="d-tbl-cell d-tbl-head-cell">Header 1</div>  
            <div class="d-tbl-cell d-tbl-head-cell">Header 2</div>  
            <div class="d-tbl-cell d-tbl-head-cell">Header 3</div>  
            <div class="d-tbl-cell d-tbl-head-cell">Header 4</div>  
        </div>  
    </div>  
    <div class="d-tbl-body">  
        <div class="d-tbl-row">  
            <div class="d-tbl-cell">Column 1</div>  
            <div class="d-tbl-cell">Column 2</div>  
            <div class="d-tbl-cell">Column 3</div>  
            <div class="d-tbl-cell">Column 4</div>  
        </div>  
    </div>  
    <div class="d-tbl-foot">  
        <div class="d-tbl-row">  
            <div class="d-tbl-cell d-tbl-head-foot">Footer 1</div>  
            <div class="d-tbl-cell d-tbl-head-foot">Footer 2</div>  
            <div class="d-tbl-cell d-tbl-head-foot">Footer 3</div>  
            <div class="d-tbl-cell d-tbl-head-foot">Footer 4</div>  
        </div>  
    </div>  
</div>

CSS

.d-tbl-row {  
    display: table-row;  
}  
.d-tbl-cell {  
    display: table-cell;  
    padding: 5px;  
    border: 1px solid #dee2e6;  
}  
.d-tbl-head-cell,  
.d-tbl-foot-cell {  
    font-weight: bold;  
}

પરિણામ

ટેબલ પર css div

પગલું 4: ટેબલ પર સ્ક્રોલ બાર ઉમેરો

HTML

<div class="p_fix_table">  
    <div class="d-tbl">  
        <div class="d-tbl-head" id="d-tbl-fix-head"></div>  
        <div class="d-tbl-body" id="d-tbl-fix-body" onscroll="tblFixScroll('d-tbl-fix-head', 'd-tbl-fix-body')"></div>  
    </div>  
</div>

CSS

.p_fix_table {  
    width: 100%;  
    max-height: 250px;  
    overflow: hidden;  
}  
.p_fix_table .d-tbl {  
    display: flex;  
    flex-direction: column;  
    flex: 1 1 auto;  
    width: 100%;  
    max-height: 250px;  
    border: 1px solid #dee2e6;  
    border-collapse: collapse;  
    overflow: hidden;  
}  
.p_fix_table .d-tbl-head {  
    flex: 1 0 auto;  
    display: block;  
    overflow-x: hidden;  
    overflow-y: scroll;  
    scrollbar-base-color: #dee2e6;  
    scrollbar-face-color: #dee2e6;  
    scrollbar-highlight-color: #dee2e6;  
    scrollbar-track-color: #dee2e6;  
    scrollbar-arrow-color: #dee2e6;  
    scrollbar-shadow-color: #dee2e6;  
}  
.p_fix_table .d-tbl-head::-webkit-scrollbar {  
    display: block;  
    background-color: transparent;  
}  
.p_fix_table .d-tbl-head::-webkit-scrollbar-track {  
    background-color: transparent;  
}  
.p_fix_table .d-tbl-body {  
    display: block;  
    overflow: scroll;  
    max-height: 220px;  
}  
.p_fix_table .d-tbl-body:nth-child(3) {  
    display: none;  
}  
.p_fix_table .d-tbl-cell,  
.p_fix_table .d-tbl-head-cell {  
    width: 170px;  
    min-width: 170px;  
    padding: 5px;  
    border: 1px solid #dee2e6;  
}  
.p_fix_table .d-tbl-row .d-tbl-cell:first-child,  
.p_fix_table .d-tbl-row .d-tbl-head-cell:first-child {  
    position: sticky;  
    left:0;  
    background: white;  
    z-index: 1;  
}

જે.એસ

function tblFixScroll(thead_id, tbody_id) {  
    let thead = document.getElementById(thead_id);  
    let tbodyScroll = document.getElementById(tbody_id).scrollLeft;  
    thead.scrollLeft = tbodyScroll;  
    //document.getElementById("frozen").scrollLeft = 0;  
}