Bootstrap 3 RC1
twitter.github.io
twitter.github.io
- Striped tables are styled via the :nth-child CSS selector, which is not available in IE8.
- IE and Safari don't actually support the <disabled> attribute on a <fieldset>
- Avoid using <select> elements here as they cannot be fully styled in WebKit browsers.
- If you add the disabled attribute to a <button>, Internet Explorer 9 and below will render text gray with a nasty text-shadow that we cannot fix.
- Keep in mind that Internet Explorer 8 lacks support for rounded corners.
- Badges won't self collapse in Internet Explorer 8 because it lacks support for the :empty selector.
- Progress bars use CSS3 transitions and animations to achieve some of their effects. These features are not supported in Internet Explorer 9 and below or older versions of Firefox. Opera 12 does not support animations.
- Firefox persists the disabled state across page loads. A workaround for this is to use autocomplete="off".
It would be nice to see if any progress is being made on these.
One site I run is a local news site (East Coast, USA) that does a fair amount of traffic (~10M pages, ~500k visitors monthly), and IE8 is still hovering around 13% for us, with IE7 at just over 2%. In fact, IE8 > IE9, by a fair margin. The good news is that IE share overall is down substantially.
Jul 2010: 74% Jul 2011: 65% Jul 2012: 58% Jul 2013: 34%
Foundation 4 has some caveats when it's being used with IE8 (http://foundation.zurb.com/docs/support.html).
Personally: I'm quite unfamiliar with Foundation so I'd go with Bootstrap 2 or 3. If I had to do it for work I'd go with BS2 because it's stable. Otherwise BS3.
note: IE8 is only beating IE9 right now because of automatic updates moving people to IE10 (finally!).
our lesson learned: it's not the quantity that is important here, but rather who is still (stuck) using older browsers - "don't bite the hand that feeds you".
My site, www.liberwriter.com is squarely aimed at non-technical people who are not really on top of the latest trends. I could very easily envision them having a higher cognitive load trying to figure out what is a button and what isn't and so on.
What do testing and studies show about this?
Also, my guess is that the flat base is there because that's what's cool these days. Which isn't necessarily a bad thing: for a lot of people, having something that looks modern and recent is pretty important too. Just that I'm worried about it, a little bit.
Bootstrap is great for having some underlying architecture but the visual styles should rarely be used. Keeping the original bootstrap style says a few things about you and your product: You're either lazy, poor at design, or don't care enough to hire a competent designer.
I don't know if it was designed by focus group or not, but a lot of work went into flat design. It helps to start with understanding the reasoning behind Microsoft's Metro design language [1][2], which is one of the originators of the flat trend.
In a nutshell, it's aimed primarily at touchscreen devices, but the principles that make it work there also happen to work on most other screens - remove all "chrome" (unnecessary shadows, 3D elements, etc) and focus on the content (strong typography, media, organized with whitespace).
[1]: http://en.wikipedia.org/wiki/Metro_%28design_language%29
[2]: http://www.microsoft.com/design/toolbox/tutorials/windows-ph...
And: Bootstrap is not intended to be used "as is" in every case. It's supposed to give you an quick start, something you can extend and customize as you see fit. It does a terrific job at that.
Having a good enough default means I can spend my time improving the product, rather than worrying about something that neither the customers nor I care much about as long as it's good enough. And stock bootstrap very much is - that's one of the things I love so much about it.
With the flat design stuff, now I'll have to think about it, look for different solutions like themes, or maybe just going for it and hoping it's not a problem, and generally spend time not making our ebook conversions better.
Ultimately, it's not that big a deal, and I'm still way better off than without bootstrap, but I do consider it somewhat of a regression.
There are none. Web design trends like flat design are fashion.
(Anecdotally) For someone non technical, change is usually bad when it comes to interfaces. I think that simple and "easy to understand" is a great direction and have tried using flat and "ios7 color&font weight differentiated buttons" in some recent projects. I have seen teething issues when moving towards UIs where the visual definition of a button does not include some "quasi-3d" aspect. Simply differentiating by text or background color makes a lot of users apprehensive about touching things, afraid they will produce an unexpected or unwanted result. I've seen them adapt rather quickly, but there has always been some 'what do I press?' stage. Not exactly test data, but the results have been pretty consistent.
EDIT: I should note that usually adding a stroke to just the bottom edge of a clickable button or a slight shadow/gradient usually helps. You can see this style in a lot of recent google products and I think it works really well (and I bet they tested it before deploying!). This method allows you to remove or tone down the shadows/gradients/textures from your navbars and other items without having them feel disconnected from your buttons.
There was a time that some believed removing the underline from links was nothing but a design led trend and a move in the wrong direction. People figured it out, adjusted, and no site missed a beat.
This looks like a nice set of changes for Bootstrap. I'm not sure how I feel about the grid class name changes, but then again, I went all-in on Foundation a few months back, so it doesn't affect me one way or another.
I'm sure mdo and fat have excellent reasons for using Less instead of Sass, but I'm a Rails user and I like Sass better to boot. Anyway, no matter, I'm glad to see Bootstrap is continuing to push forward!
http://monosnap.com/image/Vc05ZRQmGTmRrYvTEbLaYAI6w.png -- those do not look interactive at all.
[1] The trickiness with flat design is when buttons for action are also used as information display. One of the biggest issues with the first iteration of Metro was that you'd have a box that shows your current number of emails -- and you didn't know if that was just a part of your dashboard or also a link to your email that had a nice preview. That's not a failing of flat design, that's a failing of design.
Of course context plays a huge part, but it's a gamble whether this trend will survive for long.
Replacing all the markup has been on hold pending BS3 (the mobile-first aspect of BS3 seems a big win over BS2), but while waiting I've seen a lot of people talking about Zurb Foundation and its "superior" grid system.
From a purely HTML5+CSS3 point of view, what do you think of BS vs. Zurb?
That being said, my current setup is Stylus+Nib. (And for the above examples, you'd just write "border-radius: 5px" and it takes care of everything. Much more flexible.)
I think mixin's are generally overused; having to maintain css as well as right it, I'm quite happy with a syntax that doesn't encourage their use. If you need em: fine, but the you won't care about @include vs. "." anyhow.
Simply: The grid is hard-coded to be 12 columns.
If you want more or less, then you need to adjust less/grid.css manually and reflect that in column count within less/variables.css and use grunt to rebuild.
Aside from the generation of custom grids being broken, no complaints about the rest and we've been following the bleeding edge for several months now and it's been fine. Yeah a couple of things have broken, but every change has been an improvement and that's a good thing.
I've been keeping an eye on the pull request (https://github.com/twitter/bootstrap/pull/6342) and the gh-pages branch (https://github.com/twitter/bootstrap/tree/gh-pages) for other Bootstrap 3 information.
http://twitter.github.io/bootstrap/customize strongly suggests there will be another RC after this one.
It's a huge productivity boon and the documentation does a great job of showing you what to do.
Even non designers have a Deja Vu feeling - "Oh, this is a very cookie cutter look. Can we get something more distinctive?". Of course there are excellent sites [1] which help in tweaking the base design but takes a lot of work.
Flat designs can be much more easily customized and developers can spend more time focussing on the functionality than the design.
It totally speaks to my experience with their grids.
Oh, I owe it to the thread - flat buttons.
It's smaller and uses CSS property names as class names. You know CSS you know how to use it.
Looking at the framework, it looks neat and more concise than bootstrap, I might use it for my next pet project.
Why add another point of failure on your site?
I would definitely recommend this gem. Yury, the maintainer, updates it pretty much every day.
It's a fork of the twitter-bootstrap-rails gem.
Edit:
There is also this: https://github.com/jlong/sass-twitter-bootstrap/tree/3.0.0-w...
If it were a bunch of separate modules you could individually include and use as a template for your own style, you could actually use the parts you need: as it is, I really don't understand the hype.
Well if you don't want to design using a grid then I don't think it really makes sense to use bootstrap as it's main point is the grid system. Poorly made? They seem to have made a lot of improvement and is now pretty close to the Fundation one.
> an excessive (and unnecessary) css reset
imo it misses box-sizing: border-box, the default css values are really bad and a reset of any kind is always welcome.
> lots of default styling you're probably going to replace anyhow
But this is more and more the point of bootstrap, the default styling allows you to focus on the code when you're not a designer.
For me, it helps me build a quick prototype of my projects and avoid designing administration that I will be the only one to see.
Also yes you can use only bits of it if you want, just click Customize.
Version 3 is very modular. You can compile the LESS files yourself and include only what you need.
Also, bootstrap uses normalize now, not reset. This poster should make a little more effort to understand before criticizing. It's obviously a useful framework as many find it very useful. Coding and html css for a complex is not something a developer wants to do unless they have very, very good expertise in front end development. I think bootstrap is great for developers who aren't front end experts, but aren't necessarily bad developers. Maybe specializing in back end work, database, web server side stuff. Using bootstrap frees you up to focus on things that matter more for your app, and you don't have to worry about typography, typeahead, grid systems, etc. It's one of many options that satisfy this need, such as Zurb's Foundation.
I guess if you don't know css I can imagine it's a godsend: bunt frankly, basic css isn't that hard, and most of boostrap is easy to duplicate with basic css (except perhaps the media queries).
Anyhow, I don't think bootstrap doesn't have good stuff; I think the way it's presented as some kind of "system" is a bad idea. It's doesn't work well as a system. It works well as a basis when someone takes the time to pick and choose what they need.
You can't just take bootstrap AND some other css, use them both together, and expect both to work orthogonally without a lot of care. They will stomp on each others selectors and you'll have a specificity war on your hands. How can you make this work? By actually picking, the bits you need, and doing more than a modular concatenation with whatever other css you need.
Basically: it's a great css example, not an encapsulated, finished module.
When you say: "No one knows that site is bootstrap until I tell them we used it" that tells me you customized it, and that's exactly how it should be. It's not a reusable component, it's a customizable template.
As to modularity: I'm happy they're addressing part of the problem, but it's really only part of the problem. Fundamentally, these "modules" are NOT modules: they don't provide and encapsulation layer since you still need to interact with them heavily. (unless you don't want to do any styling at all, ever.)
If you will, bootstrap is a set of templates, and it would work a lot better if they packaged it as such. It's not a library, nor a module: the insides of the abstractions leak out all over the place.
If you have the money and use for a real design, bootstrap is probably not for you. It doesn't really integrates in your own design, it's just a better default.
For anything beyond that you are better off with yui/pure or csswizardry/inuit which offer much better responsive grid systems. Pure has one shortcoming in that you can't specify varying column widths for varying devices (such as 6 columns for desktop and 3 for mobile). Both frameworks are light and offer some decent UI elements with minimal styling so you can extend them.
It's not rocket science, it's HTML and CSS, and you don't need a framework to have uniformity or responsiveness.
Your site could be made up of a bunch of jquery plugins too, and stock library graphics, and is your content rehashed too?
div class=span4 is nothing more than a table-based layout in disguise. Spans and rows are not inherent to divs. You're adding a layer of new rules that doesn't complement the technology you're adding to. You may as well be building with an old fashioned table based layout.
When I view source of some of the flagship bootstrap examples, I see stuff like this... empty divs either side of the logo graphic. I remember doing stuff like this with tables back in the 90s. Spacer gifs inside the empty table cells. But in this case, it's a class.
<div class=span4></div> <div class=span4>logo</div> <div class=span4></div>
People write terrible code in bootstrap, django, backbone, etc. Even within the confines of a framework, man will always find a way to write shit code. It is one of the constants of our universe.
<div class="span4 offset4">logo</div>
But I will say its nice that they're going Flat. Much easier on the eyes, and much simpler to creative a responsive layout for multiple screen sizes.