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

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

Related

Remove horizontal scroll in mobile

I have developed a website. It looks fine when i am resizing the browser window on my laptop but when I opened it in mobile browser, it set a horizontal scroll which makes it look weird.Any help is highly appreciated.
Link : https://dcheroes.uphero.com
If you want to develop in responsive you must need to use media queries
#media screen and (max-width: ** px) and (min-width: **px) {
}
And whenever you use width to outermost elements replace with it max-width. For more information read following articles
Max-width MDN
Media queries
This is called creating a responsive design. Creating responsive designs requires a whole lot more knowledge of HTML/CSS.
Learn about responsive designs and how to create them here: https://www.w3schools.com/html/html_responsive.asp
Have you thought about using Bootstrap, this can make creating responsive designs much easier as they've done much of the work for you already.
Learn about Bootstrap and how to use it here:
https://www.w3schools.com/bootstrap/
EDIT: My apologies, it looks like you're already using Bootstrap. But barely using it IE: you're not using <div class="container"> or div class="row"or classes such as col-md-6. I highly recommend if you're going to use Bootstrap you ensure you keep using their design language throughout.

Responsive web design

I have developed my own introductory website in ASP.NET. I have used only HTML and CSS as I am not good in website designing. But the website is not looking good on mobile phone browser. Can anybody suggest me how can I use/update the same code so that it looks fine in mobile phone browser also without using bootstrapping explicitly?
My website link.
Asp.NET has nothing to do here with Responsive Web Design.
Just create CSS correctly that sets the elements where you want them according to the resolution and your good to go.
To target specific resolution use media queries: resolution
#media screen and (min-width: 480px) {
a {
color: red;
}
}
Also you can use your browser developer tools to see how your page looks in different screen sizes
Even if you do not want to use bootstrap or foundation, looking at their CSS to see how it operates is how I first learned to create responsive pages.
The core of bootstrap is referencing the page width as Pawel Lukasik mentioned above. At it's simplest above a certain width will have 1 style and below a certain width it will have another that determines the postioning / widths / floats of that content on the page.
In the case of bootstrap they have identified these various styles using the various 'grid options'
http://getbootstrap.com/css/#grid-example-basic
I suggest you take a look at the following link. It will give you a rundown on media queries that are used in CSS for responsive design. As mentioned above it is also a very good idea to take a look at the code for Bootstrap. It will give you an idea if how it achieves responsiveness, you can then try to create your own CSS to achieve the desired outcome.

Html 5 or bootstrap to use for responsive layout

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.

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%;
}