Search code examples
htmlelementblockdisplay

HTML - Button element comes before table element which comes before text


I'm still learning HTML, the following snippet doesn't quite display as intended. Without making changes to the body element, how can I get the elements to display in the following block fashion...

Punnett square:

Monohybrid cross

table

button id="punnett_mono"

Dihybrid cross

table 5x5

button id="punnett_di"

Code snippet:

    <html>
    <body>
    <p><b>Punnett square:</b></p>
    <u>Monohybrid cross</u>
    <p>
    <table style="width: 50%; border-collapse: collapse; font-size: 25;">
    <tr>
    <td style="border: none; padding:30;"></td>
    <th colspan="2" style="border: 1 solid black; padding: 30;">Paternal:<br><div id="p_box" contenteditable></div></th>
    </tr>
    <tr>
    <th rowspan="2" style="border: 1 solid black;">Maternal:<br><div id="m_box" contenteditable></div></th>
    <td id="r2_c2" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="r2_c3" style="border: 1 solid black; padding: 30;">F1</td>
    </tr>
    <tr>
    <td id="r3_c2" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="r3_c3" style="border: 1 solid black; padding: 30;">F1</td>
    </tr>
    <input type="button" id="punnett_mono" onclick="p_mono p_box.innertext, m_box.innertext" value="Predict"/>
    </p>
    
    <u>Dihybrid cross</u>
    <p>
    <table style="width: 50%; border-collapse: collapse; font-size: 25;">
    <tr>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    </tr>
    <tr>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    </tr>
    <tr>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    </tr>
    <tr>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    </tr>
    <tr>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
    </tr>
    <input type="button" id="punnett_di" onclick="p_di" value="Predict"/>
    </p>
    </body>
    </html>


Solution

  • <html>
    
    <body>
        <p><b>Punnett square:</b></p>
        <u>Monohybrid cross</u>
        <p>
            <table style="width: 50%; border-collapse: collapse; font-size: 25;">
                <tr>
                    <td style="border: none; padding:30;"></td>
                    <th colspan="2" style="border: 1 solid black; padding: 30;">
                        Paternal:<br>
                        <div id="p_box" contenteditable></div>
                    </th>
                </tr>
                <tr>
                    <th rowspan="2" style="border: 1 solid black;">
                        Maternal:<br>
                        <div id="m_box" contenteditable></div>
                    </th>
                    <td id="r2_c2" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="r2_c3" style="border: 1 solid black; padding: 30;">F1</td>
                </tr>
                <tr>
                    <td id="r3_c2" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="r3_c3" style="border: 1 solid black; padding: 30;">F1</td>
                </tr>
            </table>
            <input type="button" id="punnett_mono" onclick="p_mono p_box.innertext, m_box.innertext" value="Predict" />
        </p>
        <u>Dihybrid cross</u>
        <p>
    
            <table style="width: 50%; border-collapse: collapse; font-size: 25;">
                <tr>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                </tr>
                <tr>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                </tr>
                <tr>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                </tr>
                <tr>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                </tr>
                <tr>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                    <td id="" style="border: 1 solid black; padding: 30;">F1</td>
                </tr>
             </table>
             <input type="button" id="punnett_di" onclick="p_di" value="Predict" />
        </p>
    </body>
    
    </html>

    You must close the table tag (: