移动设备上的按钮没有水平对齐

Buttons not Horizontally Aligning for Mobile

我有两个按钮,它们在桌面上完美地水平对齐,但在移动设备上却不行。如果重要的话,我也在使用 MaterializeCSS。

相关代码如下:

html {
    --global-color: white;
    --global-color-invert: black;
    --background-color: white;
    --not-current-screen: lightgray;
    --current-screen: black;
    --padding-of-side: 0%;
    --padding-bottom: 5%;
    --margin-left: 15%;
    --margin-right: 15%;
    --padding-left: 0%;
    --padding-right: 0%;
}

html[data-theme="dark"] {
    --global-color: black;
    --global-color-invert: white;
    --background-color: #1A1B1C;
    --not-current-screen: #787878;
    --current-screen: white;
}

@media screen and (min-device-width: 0px) and (max-device-width: 600px) {
    html {
        --padding-of-side: 20%;
        --padding-bottom: 3%;
        --margin-left: 2%;
        --margin-right: 2%;
        --padding-left: 1%;
        --padding-right: 1%;
    }
    
}

.not_current_screen {
    color: var(--not-current-screen);
    border-left: 1.5px solid var(--not-current-screen);
    padding-left: var(--padding-of-side);
    margin-top: 2px;
}

.current_screen {
    color: var(--current-screen);
    border-left: 1.5px solid var(--current-screen);
    padding-left: var(--padding-of-side);
    margin-top: 2px;
}

body {
    background-color: var(--background-color);
    color: var(--global-color-invert)
}

label > span {
    color: var(--global-color-invert)
}

input[type="checkbox"] {
    border: 2px solid var(--global-color-invert) !important;
}

.padded_div {
    border: 1px solid var(--global-color-invert); 
    border-radius: 5px; 
    padding-top: 1%; 
    padding-bottom: var(--padding-bottom); 
    margin-left: var(--margin-left); 
    margin-right: var(--margin-right); 
    padding-left: var(--padding-left);
    padding-right: var(--padding-right);
    text-align: center;
}
<link href="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/css/materialize.min.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js"></script>
<div id="appMain" class="padded_div">
    <h5>Please Agree to These Terms and Conditions:</h5>
    <div class="row">
        <div class="col s2">
            <div>
                <ul>
                    <li class="current_screen">Terms and Conditions</li>
                    <li class="not_current_screen">Patient Info</li>
                    <li class="not_current_screen">Suggested Symptoms</li>
                    <li class="not_current_screen">Symptoms</li>
                    <li class="not_current_screen">Diseases</li>
                </ul>
            </div>
        </div>
        <div class="col s8">
            <br>
            <ul style="text-align: center; list-style-position: inside;" class="browser-default">
                <li>This is not a replacement for doctors.</li>
                <li>This app may not be completely accurate.</li>
                <li>Do not use this to actually check symptoms for patients.</li>
                <li>This is a demo, we are non-liable.</li>
            </ul>
            <br>
            <br>
            <label style="text-align: center;">
                <input type="checkbox" class="filled-in" />
                <span>I understand</span>
            </label>
        </div>
    </div>
    <br>
    <button style="margin-right: 33%" id="back" class="waves-effect waves-light btn">Back</button>
    <button style="margin-left: 33%" id="next" class="waves-effect waves-light btn disabled" onclick="moveToPage(2)">Next</button>
    <script>
        var checkbox = document.querySelector("input[type=checkbox]");

        checkbox.addEventListener('change', function() {
            if (this.checked) document.getElementById("next").classList.remove("disabled");
            else document.getElementById("next").classList.add("disabled");
        });
    </script>
    </div>

图像在移动设备上显示损坏:

如果您想要网站 url,请在此处:https://healthhacks2021.herokuapp.com/

移动断点去掉左键的margin-right:33%和右键的margin-left:33%,它们会并排。

将按钮放入 SPAN,移除边距(我认为这是问题所在)然后封装在 DIV 中,然后为其设置 flex,就像这样:

<div class="mybuttons">
    <span><button id="back" class="waves-effect waves-light btn">Back</button></span>
    <span><button id="next" class="waves-effect waves-light btn disabled" onclick="moveToPage(2)">Next</button></span>
</div>

并且在 CSS 文件中:

.mybuttons {
    display: flex;
    justify-content: space-between;
    text-align: left;
}

.mybuttons:last-child {
    text-align: right;
}

您的按钮将在不使用边距的情况下显示为对齐。也许不优雅......但会做。