Si të krijoni tabela Lëvizni nga etiketa Div duke përdorur CSS pa etiketën e tabelës

Si të përdoret vetia 'shfaqje' për të paraqitur një tabelë?

Tabela e mëposhtme ju jep lidhjen midis një etikete ' tabele ' dhe veçorisë përkatëse të mbështetur CSS për të përfaqësuar të njëjtin element. Pra, kur krijoni një tabelë, gjithçka që duhet të bëni është, në vend të etiketës ' tabela ' HTML, thjesht të përdorni etiketën ' div ' dhe të shtoni CSS-në përkatëse për të shfaqur një tabelë.

<tabela> {ekran: tabela}
<tr> {ekrani: rreshti i tabelës}
<kokë> {ekran: tabela-header-group}
<trupi> {ekran: tabela-rresht-grup}
<tfoot> {ekran: table-footer-group}
<col> {ekran: tabelë-kolona}
<grup kolegji> {ekran: tabelë-kolona-grup}
<td>, <th> {ekrani: qeliza e tabelës}
<titull> {ekran: mbishkrimi i tabelës}

Hapi 1: Krijoni Master Div për tabelën

HTML

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

CSS

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

Hapi 3: Krijoni një titull, titull, trup, fundor të tabelës

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;
}

Hapi 3: Krijoni rreshta të tabelës, qelizë, kokë-qelizë, qelizë këmbë

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;
}

Rezultati

css div në tabelë

Hapi 4: shtoni shiritin e lëvizjes në tabelë

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;
}

JS

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;
}
Demo
<html lang="en">

<head>
    <meta charset="utf-8">
    <title>Table Fixed Header</title>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js"></script>
</head>

<body>
    <div class="container">
        <div class="row">
            <div class="col-md-12">
                <div class="p_fix_table">
                    <div class="d-tbl">
                        <div class="d-tbl-head" id="d-tbl-fix-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 class="d-tbl-cell d-tbl-head-cell">
                                    Header 5
                                </div>
                                <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 class="d-tbl-cell d-tbl-head-cell">
                                    Header 5
                                </div>
                                <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 class="d-tbl-cell d-tbl-head-cell">
                                    Header 5
                                </div>
                            </div>
                        </div>
                        <div class="d-tbl-body" id="d-tbl-fix-body" onscroll="tblFixScroll('d-tbl-fix-head', 'd-tbl-fix-body')">
                            <div class="d-tbl-row">
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                            </div>
                            <div class="d-tbl-row">
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                            </div>
                            <div class="d-tbl-row">
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                            </div>
                            <div class="d-tbl-row">
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                            </div>
                            <div class="d-tbl-row">
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                            </div>
                            <div class="d-tbl-row">
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                            </div>
                            <div class="d-tbl-row">
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                            </div>
                            <div class="d-tbl-row">
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–1
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–2
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–3
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–4
                                </div>
                                <div class="d-tbl-cell">
                                    Column 1–5
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
                <style type="text/css">
                    .d-tbl {
                        width: 100%;
                        display: table;
                        border-collapse: collapse;
                    }
                    .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;
                    }
                    .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;
                    }

                    /* table scroll */
                    .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;
                    }
                    /* End: table scroll */
                </style>

                <script>
                    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;
                    }
                </script>
            </div>
        </div>
    </div>
</body>

</html>