I have been trying to work on creating a tree (like a directory tree) that uses as much CSS and as little JS as possible (only for states, etc), and I want to know if there are some good existing tree plugins for bootstrap or jquery-ui bootstrap.
For reference or for people confused about this question, I am looking for something like dynatree for bootstrap.
Responsive designWith Bootstrap 2, we've gone fully responsive. Our components are scaled according to a range of resolutions and devices to provide a consistent experience, no matter what.
Closed 10 years ago. I took a look at the Twitter CSS and it's completely diferent from the Twitter Bootstrap CSS. It doesn't use Bootstrap's grid system, and it isn't responsive.
Bootstrap treeview is used to show hierarchical information which starts from the root item and proceed to its children and their respective children. Each item besides the root has a parent and can have children. The parent is the node which is higher in the hierarchy and the child the one that is lower.
Twitter Bootstrap is an open source front end framework for HTML, CSS and JS, using which we can create a responsive UI for our web application. This is supported by all major browsers.
Building on Vitaliy's CSS and Mehmet's jQuery, I changed the a
tags to span
tags and incorporated some Glyphicons and badging into my take on a Bootstrap tree widget.
Example:
For extra credit, I've created a GitHub project to host the jQuery and LESS code that goes into adding this tree component to Bootstrap. Please see the project documentation at http://jhfrench.github.io/bootstrap-tree/docs/example.html.
Alternately, here is the LESS source to generate that CSS (the JS can be picked up from the jsFiddle):
@import "../../../external/bootstrap/less/bootstrap.less"; /* substitute your path to the bootstrap.less file */ @import "../../../external/bootstrap/less/responsive.less"; /* optional; substitute your path to the responsive.less file */ /* collapsable tree */ .tree { .border-radius(@baseBorderRadius); .box-shadow(inset 0 1px 1px rgba(0,0,0,.05)); background-color: lighten(@grayLighter, 5%); border: 1px solid @grayLight; margin-bottom: 10px; max-height: 300px; min-height: 20px; overflow-y: auto; padding: 19px; a { display: block; overflow: hidden; text-overflow: ellipsis; width: 90%; } li { list-style-type: none; margin: 0px 0; padding: 4px 0px 0px 2px; position: relative; &::before, &::after { content: ''; left: -20px; position: absolute; right: auto; } &::before { border-left: 1px solid @grayLight; bottom: 50px; height: 100%; top: 0; width: 1px; } &::after { border-top: 1px solid @grayLight; height: 20px; top: 13px; width: 23px; } span { -moz-border-radius: 5px; -webkit-border-radius: 5px; border: 1px solid @grayLight; border-radius: 5px; display: inline-block; line-height: 14px; padding: 2px 4px; text-decoration: none; } &.parent_li > span { cursor: pointer; /*Time for some hover effects*/ &:hover, &:hover+ul li span { background: @grayLighter; border: 1px solid @gray; color: #000; } } /*Remove connectors after last child*/ &:last-child::before { height: 30px; } } /*Remove connectors before root*/ > ul > li::before, > ul > li::after { border: 0; } }
Can you believe that the treeview on the image below does not use any JavaScript, but relies only on CSS3? Check out this CSS3 TreeView, which is good with Twitter BootStrap:
You can get more info about this here http://acidmartin.wordpress.com/2011/09/26/css3-treevew-no-javascript/.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With