Html 5 or bootstrap to use for responsive layout - html

I am a newbie in UX/UI. I see that html5 also says responsive design and Bootstrap also telling the same. So which1 do i use for my layout. What is beneficial over the other. I want to get my basics right.

HTML5 and Bootstrap are totally different entities, only when you use them together in conjunction that you get a responsive site. Bootstrap is a CSS framework that allows you to build up a responsive site using predefined css classes and some javascript.

It depends on what you want.
If you want everything to write youself, then plain HTML5. On the other hand there a Bootstrap - CSS framework which does most of boring stuff and also uses HTML5.

Basically, you can use Bootstrap with HTML5. If you want to do everything by your own while keeping the site light-weight, then you can do plain HTML5-CSS. But Bootstrap handles almost all of UI responsiveness, at the expense of weight.
In the end, it's your call if you want to create a light-weight and self-written design(which is going to be harder) or add a little more weight, for a great number of functionalities you can just basically apply in ease.

Html5 isn't responsive but bootstrap is. Responsive isn't a HTML thing but a CSS thing. Usually you want users to be able to view your apps from different devices without any problems (such as cluttering) and for that porpouse we've got responsive and adaptative (both of which are CSS related).
Let's say you've got a div tag and you give it width and height propperties, such as 500x500. In large desktop's screens it could seem to be normal size, but on mobile phones it could take the entire screen or even more. So if you give it its size as a percentage such as width: 10%; and height: 10%; it would be a responsive-like solution.
Then it is bootstrap as a responsive framework with has its grid layout system that allows you to give different porcentages to the same HTML tag in different devices, using class="col-<device>-<columns>" (of course you could use more than 1 class for the same HTML tag). Bootstrap has 4 devices:
xs: mobiles
sm: tablets
md: desktops
lg: TVs
And it also has 12 colums for each row (it doesn't handle height manually, height increases as needed unless you manually define it in your css). So , our previous example could end being something like:
<div class="row">
<div class="col-xs-10 col-sm-8 col-md-9 col-lg-5"></div>
</div>
Here you've got a codepen example. (Try resizing its width)
And it would take different sizes for different devices. So at this point you could notice 2 things, there is something more (beyond of porcentages/responsiveness) going on here, and I still haven't mention what adaptative is. Ok, adaptative is just conditionally using some CSS rules for different screen sizes (not neccesarely as porcentages) by using media queries an example of adaptative layout would be Youtube and an example of responsive layout would be Twitter.
In addition bootstrap also provides you with some js functionality, some default css components (such as navigator, tables, and much more), and also a set of font-icons.

Functionally the answer is that Bootstrap is more complete, it has more buttons, menus, slide shows, etc. that you can quickly pick up and use. The downside is that the result will look like a Bootstrap site (just as you can usually tell a WordPress site).
HTML5 (I presume you mean HTML5 Boilerplate otherwise you are comparing apples to oranges), is more basic, and you will need to edit the HTML and CSS more. On the other hand, because it is more basic, you can have more flexibility with it.

Related

Can't make NavBar Responsive?

I am working on a website and stuck at making it responsive at one particular element . Actually that is NavBar. When I give it margin-right:400px and making it centre of the web page, it is working in laptop screen whereas in smaller mobile screen its is not working and when I use the responsive properties by adding width:100 5 height:auto and margin-right:400px; it is working in small devices but not in laptop screen. On Laptop screen, it is positioned towards the right side of the screen.
Thank you in advance...
You can use any css framework like bootstrap or css mediaquery.
1: Use Flexbox
The CSS3 Flexible Box, or more widely known as Flexbox, is a new and powerful layout mode in CSS3. It provides us with a box model optimized for laying out user interfaces. With Flexbox, vertical centering, same-height columns, reordering and changing direction is a breeze.
Resource: https://flexboxfroggy.com/
2: Use CSS-Media Queries
CSS Grid is the most powerful layout system available in CSS. It brings a two-dimensional layout tool to the web, with the ability to place items in rows and columns. The importance of grids in modern web design is high so this new spec solves a lot of age-old problems with laying out elements in-browser.
Resource: https://flexboxfroggy.com/
3: Use Bootstrap
Bootstrap is the most popular HTML, CSS, and JavaScript framework for developing responsive, mobile-first websites.
Bootstrap is completely free to download and use!
Bootstrap is a framework to help you design websites faster and easier. It includes HTML and CSS based design templates for typography, forms, buttons, tables, navigation, modals, image carousels, etc. ... Here are some additional reasons to use Bootstrap: Bootstrap's responsive CSS adjusts to phones, tablets, and desktops.
4: Use Foundtation
Foundation is also counted among exceptional front-end frameworks. It is an ultra responsive framework that is used to create seamless designs to create websites, applications for the web and mobile and email templates. Foundation is the easiest framework to learn and thus it can easily be used by a new user. This exceptional framework has got a number of components including layouts, navigation, media, library containers and much more. Foundation has also got an exceptional list of plugins that offers extended choice to the developers to choose one accordingly.
Tip: When making a website, try to make it mobile first. i.e first make the website responsive for mobile views and then make it for desktop. The reason behind it is that if you make it mobile first, then it also looks good on desktop. But if you design desktop first, it won't look good on mobile.
Hope it helps

Achieve multiple components in a dashboard home page using CSS grid layout

I am new to CSS Grid Layout.
Problems I am facing while trying to achieve following using css grids
Unable to achieve responsive design. (Responsiveness doesn't go well with different screen size ratios. Example 4:3 or 16:9)
It is well known most of things doesn't go well when testing the application in Internet Explorer (Here I am talking about IE11)
(Edit: Excluded, until IE supports CSS grid layout)
It is a web tool dashboard, scroll bar should not appear in any condition while using in a full screen view.
Restricted to use third party plug-in or poly-fills. (Because of commercial use)
Restricted to use negative values in css properties.
(Edit: I know it can be achieved using media queries plus other CSS layout properties. Here I am trying to achieve this with minimal and cleaner code). Thanks
When you use relative units it will resize according to your screen size. For different layouts you still need media queries
CSS-grid is not fully supported by IE11. That usually isn't a problem as you should use a mobile-first approach anyways and mobile websites usually don't look bad on desktop anyways
There is nothing special about the grid layout here. (If anything, it makes it easier: media queries + absolute units = magic) Either use media queries or overflow: hidden;
Restricted to use third party plug-in or poly-fills. Ähm no? I don't understand what you mean
Restricted to use negative values in css properties. Again, no, you're generally not? What's the problem here?

How do you make a responsive site without media-queries?

For the life of me, I can't quite figure out how this template is responsive without any extensive use of media-queries.
https://02dc74ce3e31e56a52ebcc845dca58e87283aabe.googledrive.com/host/0Bxbofwq0kd4ReUt2YWVOYmt3WVU/
Anyone have any ideas?
I bought this template, and the responsiveness kinda broke while I was applying it and the author is not responding to emails.
I can't quite figure out how this looks so elegant on small screens particularly.
A webpage doesn't need to use media queries to be responsive. Responsive by definition means the elements adapt or "respond" to your device or screen size, instead of using a fixed or pre-defined width/height/arrangement regardless of the viewing device.
The link you pasted is certainly a "responsive" site, and they achieve this by allowing elements to have a fluid width (only with a max-width on the container, to make sure it doesn't keep growing if you have a very large screen, since that would look funny).
The way they do it makes your CSS code very simple and uncluttered from various viewport pixel definitions and media queries.
You can simply set max-width to prevent an element to be wider than required on large screens. Here is fiddle: http://jsfiddle.net/ur3futxp/
The site uses twitter bootstrap to make the site responsive. Bootstrap by default makes a site responsive using media queries if you use it grid system. Please refer the documentation http://getbootstrap.com/css/
This site is using twitter bootstrap framework which is developed to make the site responsive with all the devices without using any media queries as it already have predefined all the media queries in its framework and if you want to any more things to get responsive you must add your classes in your style.css file and make it sure that it will not conflict with twitter bootstrap predefined classes and you can do that by reviewing this site
http://getbootstrap.com

A responsive CSS grid for high-res screens

I am using Skeleton now and like how it manages screens of different sizes but its max width is 960px. Please recommend me some responsive CSS framework that is created and tested for screens up to 1920px width. I know I can update existing Skeleton instance for my needs but I'd like to try something ready-to-use.
Thanks.
Most grid frameworks don't tend to go right up to 1920, it's up to you to extend them the last bit. Check out these two for alternatives to Skeleton though:
http://www.cssgrid.net
http://www.tinyfluidgrid.com
I do believe you can set a width as high as you want with Zurb Foundation. Personally, I never go this high up, but see how it fares. It should size down appropriately. Foundation does come with a lot of extras, but you can opt out of them on the download page.
...actually, I just did a quick download, with just the responsive CSS and main styles and a couple of the pre-made HTML templates, and sized the window up. Works pretty well, I think. I set the max-width at 1920px. Figure out how many columns you need, etc. and test it out.

how to make my website fluid?

I've never done this before. The website I have just built is the second one I have ever built. There is a main container div and a header. I noticed that this simple html/css and js site looks terrible on mobile devices.
When it comes to making the site fluid are there any rules or approaches to make it quick and easy? If I just start changing all set pixel widths to percentages will the elements lose thir alignment in relation to each other? For example, the image in the main image slider is aligned, using pixels, based upon the position of the logo in the header.
Before I get started any pointers would be most appreciated. Here is the site: www.hauswoods.com
I would suggest you look into media queries instead, this will allow you to specify CSS related to different screen sizes. Yes, you could change your website to a liquid/fluid layout but with your current content, getting the slider and images to look right will be a headache.
A quick and easy approach would be to use a framework like Bootstrap (http://twitter.github.com/bootstrap/)
I'm sure some people would argue that you won't learn if you use that (because it will do a lot for you), but I think you can learn by example.
Bootstrap uses progressive enhancement principles to improve UIs and uses something called 'Less' for making CSS a bit more generic (at the expense of some complexity). Still, you can use whichever bits you like from it. If you've got a greenfield site it's a good place to start. It supports fluid layouts and explains to you how your design will degrade on mobile devices with smaller screens.
There are plenty of good tutorials out there:
http://green-beast.com/blog/?p=199
http://www.maxdesign.com.au/articles/liquid/
http://css-tricks.com/the-perfect-fluid-width-layout/
Below are IMHO some of the best JS-frameworks/html5-templaters that help with what you're trying to achieve. No need to re-invent the wheel.
Twitter Bootstrap
Foundation
CreateJS
Skeleton
HTML5 Boilerplate
HTML KickStart
Montage HTML5 Framework
SproutCore
Zebra
if you want your website to be fluid just use percentage instead of pixels.
.classname{
width: 80%;
}