Content loaded under Bootstrap's dropdown selection is stacked one under another instead of side by side

Viewed 39

So I have two menu selections to compare two graphs side by side. They should be loaded side by side when they are chosen from the dropdown menu, but I don't understand why they are stacked one under the other instead of side by side, even if I specified float left/right for the two columns they should be in. I checked and all tags seem to be closed, they should be in the right place. Everything else works. What is wrong?

The code:

        $('#inlineFormCustomSelect').change(function() {
        $('.child-item').removeClass('show'); // hide all visible
            $('#' + $( this ).val()).addClass('show'); // Show what is necessary
        });

    $('#inlineFormCustomSelect2').change(function() {
    $('.child-item1').removeClass('show1'); // hide all visible
        $('#' + $( this ).val()).addClass('show1'); // Show what is necessary
    });
        .child-item {
            display: none
        }
        .child-item1 {
            display: none
        }

        .show {
            display: block
        }
        .show1 {
            display: block
        }

#sinistra {
  float:left;
  width:50%
}
#destra {
  float:right;
  width:50%
}
<!doctype html>
<html lang="en">


<head>
    <!-- Required meta tags -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <script src="https://public.flourish.studio/resources/embed.js"></script>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"
        integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
        <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

   

    <title>Homepage</title>
</head>

<body>
  <div class="container-fluid">
  <div class="row">
    <div class="col" id="sinistra">
    <form>
        <div class="form-row align-items-center">
            <div class="col-auto my-1">
                <label class="mr-sm-2" for="inlineFormCustomSelect">Scegli i capitoli da confrontare...</label>
                <select class="custom-select mr-sm-2" id="inlineFormCustomSelect">
                    <option selected>Choose...</option>
                    <option value="1">Capitolo I</option>
                    <option value="2">Capitolo II</option>
                    <option value="3">Capitolo III</option>
                    <option value="4">Capitolo IV</option>
                    <option value="5">Capitolo V</option>
                    <option value="6">Capitolo VI</option>
                    <option value="7">Capitolo VII</option>
                    <option value="8">Capitolo VIII</option>
                </select>
                <div>
                    <div id="1" class="child-item">
                        <div class="flourish-embed flourish-hierarchy" data-src="visualisation/2406500" data-url="https://flo.uri.sh/visualisation/2406500/embed"><script src="https://public.flourish.studio/resources/embed.js"></script></div>
                      </div>
                </div>
                <div>
                  <div id="2" class="child-item">
                      <div class="flourish-embed flourish-hierarchy" data-src="visualisation/2527133" data-url="https://flo.uri.sh/visualisation/2527133/embed"><script src="https://public.flourish.studio/resources/embed.js"></script></div>
                    </div>
                </div>
                <div>
                  <div id="3" class="child-item">
                      <div class="flourish-embed flourish-hierarchy" data-src="visualisation/2527146" data-url="https://flo.uri.sh/visualisation/2527146/embed"><script src="https://public.flourish.studio/resources/embed.js"></script></div>
                    </div>
                </div>
                <div>
                  <div id="4" class="child-item">
                      <div class="flourish-embed flourish-hierarchy" data-src="visualisation/2527195" data-url="https://flo.uri.sh/visualisation/2527195/embed"><script src="https://public.flourish.studio/resources/embed.js"></script></div>
                    </div>
                </div>
                <div>
                  <div id="5" class="child-item">
                      <div class="flourish-embed flourish-hierarchy" data-src="visualisation/2527240" data-url="https://flo.uri.sh/visualisation/2527240/embed"><script src="https://public.flourish.studio/resources/embed.js"></script></div>
                    </div>
                </div>
                <div>
                  <div id="6" class="child-item">
                      <div class="flourish-embed flourish-hierarchy" data-src="visualisation/2527243" data-url="https://flo.uri.sh/visualisation/2527243/embed"><script src="https://public.flourish.studio/resources/embed.js"></script></div>
                    </div>
                </div>
                <div>
                  <div id="7" class="child-item">
                      <div class="flourish-embed flourish-hierarchy" data-src="visualisation/2527245" data-url="https://flo.uri.sh/visualisation/2527245/embed"><script src="https://public.flourish.studio/resources/embed.js"></script></div>
                    </div>
                </div>
                <div>
                  <div id="8" class="child-item">
                      <div class="flourish-embed flourish-hierarchy" data-src="visualisation/2527246" data-url="https://flo.uri.sh/visualisation/2527246/embed"><script src="https://public.flourish.studio/resources/embed.js"></script></div>
                    </div>
                </div>
                <div>
                </div>



            </div>
        </div>
    </form>
</div>
<div class="col" id="destra">
<form>
    <div class="form-row align-items-center">
        <div class="col-auto my-1">
            <label class="mr-sm-2" for="inlineFormCustomSelect2">Scegli i capitoli da confrontare...</label>
            <select class="custom-select mr-sm-2" id="inlineFormCustomSelect2">
                <option selected>Choose...</option>
                <option value="1">Capitolo I</option>
                <option value="2">Capitolo II</option>
                <option value="3">Capitolo III</option>
                <option value="4">Capitolo IV</option>
                <option value="5">Capitolo V</option>
                <option value="6">Capitolo VI</option>
                <option value="7">Capitolo VII</option>
                <option value="8">Capitolo VIII</option>
            </select>
            <div>
                <div id="1" class="child-item1">
                    <div class="flourish-embed flourish-hierarchy" data-src="visualisation/2406500" data-url="https://flo.uri.sh/visualisation/2406500/embed"><script src="https://public.flourish.studio/resources/embed.js"></script></div>
                  </div>
            </div>
            <div>
              <div id="2" class="child-item1">
                  <div class="flourish-embed flourish-hierarchy" data-src="visualisation/2527133" data-url="https://flo.uri.sh/visualisation/2527133/embed"><script src="https://public.flourish.studio/resources/embed.js"></script></div>
                </div>
            </div>
            <div>
              <div id="3" class="child-item1">
                  <div class="flourish-embed flourish-hierarchy" data-src="visualisation/2527146" data-url="https://flo.uri.sh/visualisation/2527146/embed"><script src="https://public.flourish.studio/resources/embed.js"></script></div>
                </div>
            </div>
            <div>
              <div id="4" class="child-item1">
                  <div class="flourish-embed flourish-hierarchy" data-src="visualisation/2527195" data-url="https://flo.uri.sh/visualisation/2527195/embed"><script src="https://public.flourish.studio/resources/embed.js"></script></div>
                </div>
            </div>
            <div>
              <div id="5" class="child-item1">
                  <div class="flourish-embed flourish-hierarchy" data-src="visualisation/2527240" data-url="https://flo.uri.sh/visualisation/2527240/embed"><script src="https://public.flourish.studio/resources/embed.js"></script></div>
                </div>
            </div>
            <div>
              <div id="6" class="child-item1">
                  <div class="flourish-embed flourish-hierarchy" data-src="visualisation/2527243" data-url="https://flo.uri.sh/visualisation/2527243/embed"><script src="https://public.flourish.studio/resources/embed.js"></script></div>
                </div>
            </div>
            <div>
              <div id="7" class="child-item1">
                  <div class="flourish-embed flourish-hierarchy" data-src="visualisation/2527245" data-url="https://flo.uri.sh/visualisation/2527245/embed"><script src="https://public.flourish.studio/resources/embed.js"></script></div>
                </div>
            </div>
            <div>
              <div id="8" class="child-item1">
                  <div class="flourish-embed flourish-hierarchy" data-src="visualisation/2527246" data-url="https://flo.uri.sh/visualisation/2527246/embed"><script src="https://public.flourish.studio/resources/embed.js"></script></div>
                </div>
            </div>
            <div>
            </div>
        </div>

    </div>
</form>
</div>
</div>
</div>

</body>

</html>

2 Answers

I checked it and it seems to be caused by the col-auto class being used, which leads to both selection menus overlapping on smaller screens. Just using the col class should fix your problem.

This happens because you have the same id in elements of child-item and child-item1 classes. Html attributes id should be unique on your page to work correctly.

Just add custom prefixes to the ids of your elements, e.g. #col1-1, #col1-2, #col1-3, #col2-1, #col2-2, #col2-3. And fix the corresponding jQuery code.

Related