Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Implementing Blades in HTML

Tags:

html

css

I am trying to create a 'blades' experience and my CSS isn't quite right...and I don't see why.

  • Adding a new blade should simply push everything to the right

GOAL:

enter image description here

PROBLEM:
I have given the Widgets a clear on both...and neither the Dashboard Container, nor the Blade Container have a fixed width...so I am confused.

enter image description here

STYLE:

/** DASHBOARD CONTAINER **/
.dashboard-container { border: solid 1px #FCC4BF; padding: 5px; margin-top: 5px; }
.dashboard-container .widget { clear: both; display: inline-block; vertical-align: top; }

/** FORM CONTAINER **/
.form-container { border: solid 1px #FCC4BF; height: 500px; padding: 5px; width: 500px; }

/** BLADE CONTAINER **/
.blade-container { border: solid 1px #FCC4BF; padding: 5px; }
.blade-container .blade { border: 1px solid #ccc; border-radius: 3px; display: inline-block; height: 500px; padding: 2px; width: 200px; }

CURRENT HTML:

<div class="dashboard-container">
    <div class="widget">
        <div class="form-container">
            My Very Tall Form
        </div>
    </div>
    <div class="widget">
        <div class="blade-container">
            <div class="blade">
                Blade
            </div>
        </div>
    </div>
</div>
like image 627
Prisoner ZERO Avatar asked Dec 14 '25 17:12

Prisoner ZERO


2 Answers

The problem is that they need to go somewhere after the screen ends, the default behaviour is to break line, you can avoid that with white-space: nowrap;, added overflow-x: scroll; so you can scroll through your elements.

Note: I added those properties to .dashboard-container

/** DASHBOARD CONTAINER **/
.dashboard-container { border: solid 1px #FCC4BF; padding: 5px; margin-top: 5px; overflow-x: scroll; white-space:nowrap; }
.dashboard-container .widget { clear: both; display: inline-block; vertical-align: top; }

/** FORM CONTAINER **/
.form-container { border: solid 1px #FCC4BF; height: 500px; padding: 5px; width: 500px; }

/** BLADE CONTAINER **/
.blade-container { border: solid 1px #FCC4BF; padding: 5px; }
.blade-container .blade { border: 1px solid #ccc; border-radius: 3px; display: inline-block; height: 500px; padding: 2px; width: 200px; }
<div class="dashboard-container">
    <div class="widget">
        <div class="form-container">
            My Very Tall Form
        </div>
    </div>
    <div class="widget">
        <div class="blade-container">
            <div class="blade">
                Blade
            </div>
        </div>
    </div>
    <div class="widget">
        <div class="blade-container">
            <div class="blade">
                Blade
            </div>
        </div>
    </div>
    <div class="widget">
        <div class="blade-container">
            <div class="blade">
                Blade
            </div>
        </div>
    </div>
    <div class="widget">
        <div class="blade-container">
            <div class="blade">
                Blade
            </div>
        </div>
    </div>
</div>
like image 181
dvr Avatar answered Dec 16 '25 06:12

dvr


use flexbox simplifying your html markup a lot.

.dashboard-container {
  border: solid 1px #FCC4BF;
  padding: 5px;
  margin-top: 5px;
  display: flex;
    height: 500px;
}


/** FORM CONTAINER **/

.form-container {
  border: solid 1px #FCC4BF;
  padding: 5px;
  flex: 0 500px;
}


/** BLADE CONTAINER **/

.blade {
  border: 1px solid #ccc;
  border-radius: 3px;
  flex: 0 200px;
  margin: 0 10px
}
<div class="dashboard-container">
  <div class="form-container">
    My Very Tall Form
  </div>
  <div class="blade">
    Blade
  </div>
  <div class="blade">
    Blade
  </div>
  <div class="blade">
    Blade
  </div>
  <div class="blade">
    Blade
  </div>
  <div class="blade">
    Blade
  </div>
</div>
like image 35
dippas Avatar answered Dec 16 '25 07:12

dippas



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!