I am finishing up redesigning my website and incorporating Bootstrap into it. I realized that I have a mobile website from a 3rd party so I don't need the XS break point.
I have tried to just display: none and use the hidden-xs class for everything that that falls below the SM break point but I would rather just have my website be at the tablet size no matter how small you resize the window.
How would I go about eliminating that XS break point? Does anyone have any suggestions?
Please let me know! Thanks!
The fastest way to accomplish this is to either customize your own Bootstrap build or use LESS to make the change yourself.
To customize your own build (http://getbootstrap.com/customize/#media-queries-breakpoints), change the #screen-xs breakpoint value to "768px" so it matches the #screen-sm-min value.
Alternatively, override the #screen-xs variable in your LESS file by setting it to #screen-sm-min, like so:
#screen-xs: #screen-sm-min;
Note that #screen-xs is deprecated as of Bootstrap v3.0.1.
Related
I have a web-app with the front end using materializecss.com framework. It has quite a few data tables throughout. My tables are using css from materialize and I really like the styling. The tables have between 5-8 columns and on mobile you first have to zoom in and then scroll over.
What I'm not sure about is what the best approach is to making this mobile friendly; I've been searching around for code that converts tables into cards and have found some for bootstrap cards but not for materialize. I don't want to hide columns.
I've tried my hand at a few solutions using media query's like: #media only screen and (max-width: 992px)... but I think materialize is overriding them because they are not working. I've tried to mark them !important or search through and modify the materialize css file but it is not working.
How bad would it be to create separate card elements and hide either the table or cards depending on screen size? It's mostly text data and links that are loading so I don't think it would significantly increase data transfer amount.
I'm not a pro at html/css/sass and even worse at javascript so any advice is greatly appreciated!
Adjusting your website in relation to the screen size is called responsive
Try looking for that in your research.
Using materialize gives you the option to the option to define a rowand within that you can make columns and define their size. You can even define the size relative to the screen size.
Try looking into this: https://materializecss.com/grid.html
Materialize also has its own (responsive) table and collection structure that might be helpfull to you.
Also it might be helpfull to use % in your css instead of fixed px
If you this doe not solve your case, try looking into flexbox and overflow.
I hope I understood your problem correctly otherwise some code of yours would be really helpfull :)
I have a really big web project based on Twitter Bootstrap.
I need to totally disable responsive features.
But Bootstrap page instruction for disabling responsive features (see this http://getbootstrap.com/getting-started/#disable-responsive ) includes a really hard step to do : For grid layouts, use .col-xs-* classes in addition to, or in place of, the medium/large ones. Don't worry, the extra-small device grid scales to all resolutions.
But I don't want to modify hundreds of .php and .html files and change all col-md-* styles to col-xs-*, what can I do?
As steps provided by bootstrap, its really hard to do change in hundred of files to achieve this. But CSS is the thing that could not get change easily by any function or script. You will need to put manual efforts.
One way is that instead changing class names in huge number of files, do edit css file of bootstrap and set common changes for classes of different resolution. Like if you have width 1200px to class ".col-xs-12" and it is working for you then reflect this change to other classes like ".col-sm-12" etc.
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.
I want to change boostrap 3 navbar to collapse in bigger resolution (now is ~740 px width) and i want to change it to 940 px , how to do it ?
If you download the Bootstrap source, you can modify the LESS variables (in variables.less) and compile the LESS into CSS yourself. The variable you're looking for specifically is #screen-sm, which is 768 by default.
A similar post on SO (Bootstrap 3.0 Media queries), mentions using Boostrap's customize option to make changes like this without having to download the source (http://getbootstrap.com/customize/#variables-basics, then scroll down to "Media queries breakpoints"), but I can't actually change the variables within that page, so I think you'll need to use the source and compile to CSS yourself.
Another question on SO worth reading discusses some best practices for changing those variables without getting your copy of the Bootstrap source too far out of sync that it would be difficult to upgrade. The question deals specifically with Bootstrap 2, but I think it's still worth reading.
Twitter Bootstrap Customization Best Practices
Edit: Bootstrap's documentation suggests modifying the #grid-float-breakpoint variable. That would be a more specific change to the responsive settings than modifying #screen-sm. Bootstrap docs
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.