I'm having some problems of respecting the grid of bootstrap 4. I have a content of col-sm-9 and a right sidebar of col-sm-3 float-right. But the sidebar does not start from the top, but start just after the end of col-sm-9. I would like to align both the column.
Here is how the page it is looking:
Here you can inspect the code of the page: Code
This is basically my html:
<section class="row clearfix" ng-cloak>
<div class="content-top no-gutters">
<div style="background-image: url({{post.better_featured_image.source_url}});" class="content-tracks-image">
</div>
<div class="content-featured-image">
<img>
</div>
</div>
<div class="clearfix"></div>
<div class="gs-track col-sm-9"><!--start player-->
<!---player--->
</div><!-- close player -->
<div class="col-sm-9 bg-white pt-3 pb-3" ng-cloak><!-- start content-->
<!--content->
</div><!-- close content -->
<div class="col-sm-3 float-right pt-3"><!-- start sidebar -->
<!-- sidebar -->
</div><!-- close sidebar -->
</section>
I was able to align the sidebar to the content but I had to move the sidebar box before the player, and I don't want to have this behaviour.
It was difficult working with your supplied link since when I tried to run the HTML I would not get the same content. But upon manually putting in my own content and trying to recreated I found that using bootstraps ROW on a container div worked.
<div class="row">
<div class="col-sm-9">CONTENT</div>
<div class="col-sm-3">SIDEBAR</div>
</div>
Try it and let me know if it works.
Related
I am using bootstrap. I m having header and footer, in between that I want to show side bar on left side. I am new to bootstrap and angular js. please guide me how I can build this type of structure.
Try this....
<div class="container">
<div class="row">
<div class="col-md-4">
Sidebar
</div>
<div class="col-md-8">
text
</div>
</div>
</div>
Also learn basic Boostrap: http://getbootstrap.com/
I don't really understand your problem there Priyanka kakade.
If you want a navbar on the left of your content, you can use this kind of structure between header and footer :
Example :
<div class="container-fluid">
<div class="row">
<div class="col-xs-4 col-md-2">
<!-- navigation -->
</div>
<div class="col-xs-8 col-md-10">
<!-- content of the page -->
</div>
</div>
</div>
I recommend you use xs (mobile display) and md (desktop display) classes together, otherwise your navigation would be too little on mobile devices, or too big on computers.
I have a page where container-fluid is the main div and then nav comes. After nav I have section where views loading in with row wrapping up content which is divided in columns or offsetted. But When I use a row class either on section or the div after , it is creating a gap between nav and page. Mainly adding it to container. But that is why we should be using container. And row is for columns so why still the gap?
<div class="container-fluid ng-scope" id="page-wrapper" ng-controller="homeCtrl as ctrl">
<nav><div class="container"></div></nav>
<section>
<div ng-controller="assumeIdCtrl as ctrl" class="row ng-scope">
<div class="col-md-4 col-md-offset-4 col-sm-4 col-sm-offset-4 col-xs-6 col-xs-offset-3">
</div>
</div>
</section>
Use default bootstrap's nav, you can copy the code from W3C.
Then make your structure correctly like, for example:
<nav> </nav>
<section class="container-fluid">
<div class="row">
<div class="col-md-6">
</div>
<div class="col-md-6">
</div>
</div>
<div class="row">
<div class="col-md-12">
</div>
</div>
</section>
Check that there are different container types. div, nav, aside, section, footer, etc are containers by default. It's ok and awesome to use bootstrap, but we have to remember the default atributes of HTML tags before aply bootstrap.
Try with the default bootstrap's fixed nav.
I made an example of portfolio using it, you can check and inspect here:
portfolio example
it's very clean concerning js (only one jQ function if i dont remember wrong) and there's only a bit of handmaded css.
So I want the following layout:
Here is an artists mock-up:
But here is what I ended up with after trying for quite a few days:
I need help to make the last elements line up right. If I use the wrong components you are free to change them. The site needs to be mobile friendly. I have made a fiddle here.
.
I also seem to have the issue of being unable to scroll vertically on the page if overflow occurs.
In bootstrap 3 seems a simple layout like this (just a suggestion)
<div class='container-fluid'>
<div class='navbar navbar-default navbar-fixed-top'> .... <(div>
</div> <!-- end container full width -->
<div class='container'><!-- begin container center margin auto -->
<div class=' col-md-12'><img src='yourlink'></div>
<div class=' col-md-12' ><h1>Title</h1></div>
<div class='jumbotron col-md-12' </div>
<div class='row col-md-12>
<div class='col-md-6>
... content for left lower box
</div>
<div class='col-md-6'>
<div> content for r2ght lower 1 box</div>
<div> content for right lower 2 box</div>
</div>
</div>
</div><!-- end of container --!>
with a background image
I currently have my layout page divided into two columns using bootstrap 3 with something similar to this.
<div class="row">
<div class="col-md-4 info">
<!--some Markup -->
</div>
<div class = "col-md-8 tasks-column">
<!--some Markup -->
</div>
</div>
I want the div with class "info" to stay fixed on the top left side when scrolling the page. When I try the bootstrap "affix" class the content in "info" effectively gets fixed but the "tasks-column" suddenly moves all the way to the left completely covering it.
I have also tried the plain css position:fixed; on "info" but it does not do anything.
The content in info is NOT a navigation panel.
Thank you guys.
Edit: the content in info is dynamic (it varies depending on the user input).
You need to offset the tasks-column. Try this.
<div class="row">
<div class="col-md-4 info">
<!--some Markup -->
</div>
<div class = "col-md-8 col-md-offset-4 tasks-column">
<!--some Markup -->
</div>
This is because you are fixing the content that pushes "tasks-column" to the right.
The simple way to do what you want is just to move "info" inside col-md-4, like this:
<div class="row">
<div class="col-md-4">
<div class="info">
<!--some fixed Markup -->
</div>
</div>
<div class="col-md-8 tasks-column">
<!--some Markup -->
</div>
</div>
Hope this helps!
In this layout, I want to place a circle (with fixed size) at the intersection of the column and a line on the bottom left corner of the page (which should be a no scroll page). The circle should look like this image.
I’ve started doing it with the flexbox property, however this was the first time I used this property and I am not getting how to do this.
Does anyone know how can I do it?
<div class="wrap">
<div class="hud1">
<div class="gps box"></div><!-- /gps -->
<div class="info box"></div><!-- /info -->
<div class="phone box"></div><!-- /phone -->
</div><!-- /hud1 -->
<div class="speed">
<div class="circle"></div>
</div>
<div class="hud2">
<div class="status box withfocus">
<h1>Estado</h1>
</div><!-- /status -->
<div class="media box withoutfocus">
<h1>Multimédia</h1>
</div><!-- /media -->
<div class="environment box withoutfocus">
<h1>Ambiente</h1>
</div><!-- /environment -->
<div class="settings box withoutfocus">
<h1>Definições</h1>
</div><!-- /settings -->
</div><!-- /hud2 -->
</div><!-- /wrap -->
Here’s the code:
http://jsfiddle.net/marisaroque/mR7nq/
EDIT:
Here’s the image:
Link
Thank you in advance!
Is it like this: http://jsfiddle.net/HUmLb/embedded/result/ ?
The key is making .hud1 a one-column flex, and in the last item inserting a .hud2 row.
I still couldn't make it center vertical, but I presume it's a good start.
Let us know.
Edit
http://jsfiddle.net/ngxyW/
I put an empty box in the lower corner and fixed the wrap div to bottom left.
This is a great reading about flex display: http://css-tricks.com/snippets/css/a-guide-to-flexbox/