Take a look at www.goo.gl/2SIOJj , this is a work in progress, but it can help you.
I use a cookie to determine if I want to have a desktop or responsive version. In the page footer you can find two spans in general. Js is a script for handling clicks.
<div class="col-xs-6" style="text-align:center;"><span class="make_desktop">Desktop</span></div> <div class="col-xs-6" style="text-align:center;"><span class="make_responsive">Mobile</span></div> function setMobDeskCookie(c_name, value, exdays) { var exdate = new Date(); exdate.setDate(exdate.getDate() + exdays); var c_value = escape(value) + ((exdays === null) ? "" : "; expires=" + exdate.toUTCString()); document.cookie = c_name + "=" + c_value + "; path=/"; window.location.reload(); } $(function() { $(".make_desktop").click(function() { setMobDeskCookie('deskmob', 1, 3650); }); $(".make_responsive").click(function() { setMobDeskCookie('deskmob', 0, 3650); }); });`enter code here`
i finished splitting all my own CSS into two files, I do not use bootstrap navigation, but my own, so this is most of my custom styles, so this will not solve your problem but it works for me
and I also created not-responsive.css which forces the grid to support a larger version of the screen
in case you chose mobile, I would upload / echo
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"> <script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script> <link href="/themes/responsive_lime/bootstrap-3_1_1/css/bootstrap.css" rel="stylesheet"> <script src="/themes/responsive_lime/bootstrap-3_1_1/js/bootstrap.min.js"></script> and load these stylesheets <link rel="stylesheet" type="text/css" media="screen,print" href="/themes/responsive_lime/css/style.css?modified=14-06-2014-12-27-40" /> <link rel="stylesheet" type="text/css" media="screen,print" href="/themes/responsive_lime/css/style-responsive.css?modified=1402758346" />
in case you select the desktop, I would load / echo
<meta name="viewport" content="width=1024"> <script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script> <link href="/themes/responsive_lime/bootstrap-3_1_1/css/bootstrap.css" rel="stylesheet"> <script src="/themes/responsive_lime/bootstrap-3_1_1/js/bootstrap.min.js"></script> <link rel="stylesheet" type="text/css" media="screen,print" href="/themes/responsive_lime/css/style.css?modified=14-06-2014-12-27-40" /> <link rel="stylesheet" type="text/css" media="screen,print" href="/themes/responsive_lime/css/non-responsive.css?modified=1402758635" />
non-responsive.css is one that has overrides for bootstrap. I am worried about the layout, so there is not much there, given that I handle the navigation in my own way, so css is for it, and the rest of the bits are in my other css files
note that my setup behaves like a desktop even on desktop browsers, unlike some other solutions that I saw that would ignore only the viewport, which, apparently, was downloaded only to mobile devices for me.