I want the background image on my slider to change on mobile, when opened on mobile the part of the background that displays makes the slider text unreadable.
#media (#max-width: 450px){
.main_slider_item_bg {
background-image:url("/images/web_phone.png")
}
<div class="owl-item main_slider_item">
<div class="main_slider_item_bg " style="background-image:url(images/web.png)"></div>
I've tried this but it's not working.
Your solution is here:
#media (max-width: 450px){
.main_slider_item_bg {
background-image:url("/images/web_phone.png")
}
}
Inside parentheses remenber put the device's feature with the syntax you use when you declare a CSS property inside a rule.
I'm fairly new to this.
On my website, I have been trying to fix the mobile version of it.
https://glacieradventure.is/tour/vatnajokull-glacier-walk/
If you look at this page on PC you will see the booking widget on the right side but when you switch it to mobile device view the booking widget goes to the bottom.
I want the booking widget under <h2>.
I did this by moving the html code, but it does not work with the css, and when I switch back to PC view it looks wrong.
Please help a girl out!
After h2 tag, create a div element
ie,
<div class="responsive-only">{Copy and past the booking widget code here}</div>
// Note: So the booking widget code present in both places.
<style>
.responsive-only {display: none;}
#media (max-width: 991px) {
.responsive-only {display: block;}
// Note: Then hide the another one widget (which appears in the bottom)
}
</style>
Hope it will helpful.
You need to add styles display:flex and flex-direction: column-reverse to your element with the class .twocolumns at your mobile version. It should help you.
#media screen and (max-width: 991px) {
.twocolumns {
padding-right: 0;
display: flex;
flex-direction: column-reverse;
}
}
I wanted to have large pictures be hidden for mobile devices. Looking at this site I put the following styles in my css:
//medium+ screen sizes
#media (min-width:992px) {
.desktop {
display:block !important;
}
}
//small screen sizes
#media (max-width:991px) {
.mobile {
display:block !important;
}
.desktop {
display:none !important;
}
}
Then I apply the class in my html like this:
<img class="desktop" src="img/test/test.jpg"
alt="jhkjhjk" height="600" width="900">
But when I shrink my browser window the image remains there. Have I missed something?
Since you are using Boostrap, you can do it even easier.
Append a class of
visible-md
to your image.
md is for >992 px.
Check out the easy classes you can use
http://getbootstrap.com/css/#responsive-utilities
EDIT: probably wanna do visible-md visible-lg if you're gonna do visibles. The chart explains all the combinations.
I have an company's employee team page I am working on HERE.
My problem is that the employee's images will not scale down when they appear on mobile.
My CSS is like this:
#media (max-width: 767px) {
.employee-image {
max-width: 85%;
max-height: 85%;
}
}
Maybe I have conflicting CSS somewhere? I do not know.
Page link: http://texasca.com/team
CSS Link: http://texasca.com/includes/team.css
It looks like you are using bootstrap. In bootstrap you have a helper class called .img-responsive. You can replace .employee-image with .img-responsive and I think you will get the desired result.
To be more clear - Just add the img-responsive class to the desired images.
I understood how I change CSS via media queries (such as media="screen and (max-width:640px)")
but let's say I want to write (just for example)
<div>
[if screen resolution is lower then 960 px]
<div>
some new text only for lower resolution
</div>
[end of condition]
</div>
What is the condition I need to write to get it right?
As far as i have experienced, you cannot do media queries inside HTML pages. You need to do it from within your CSS.
But if you want to show some special text only when it is below a certain resolution, why not only make it visible when the resolution is lower than 960px?
Creating responsive designs is very different from a regular design, because you have to think a lot more (which is haaard)
you can check it via using javascript screen object :
screen.width
or you can do this with css
<link rel="stylesheet" media="screen and (min-device-width: 800px)" href="800.css" />
http://css-tricks.com/6206-resolution-specific-stylesheets/
http://www.javascriptkit.com/howto/newtech3.shtml
I am actually going through the same situation and found that if you want to do this you could really add all the text in the HTML page, and then hide it on screen widths that you don't want it to show. For example:
<div>
[text that will be shown for screens less or equal to 960px in width]
<div class="smallScreen">
some new text only for lower resolution
</div>
[end of condition for small screens]
[text that will be shown for other screens that are greater in width]
<div class="largeScreen">
some new text only for higher resolution
</div>
</div>
And then you could add CSS:
/* On smaller resolutions, hide the text for Large screens */
#media only screen and (max-width: 960px) {
.largeScreen {display: none;}
}
/* On larger resolutions, hide the text for Small screens */
#media only screen and (min-width: 960px) {
.smallScreen {display: none;}
}
I hope this works out fine :)
You need to assign an id (or a class or any other way of finding your element from CSS) to the <div> and then you can set a media query definition like this:
<div id="mydiv">...</div>
<style type="text/css">
#media screen and (min-width: 961px) {
div#mydiv { display: none }
}
</style>
Or for better readability: Make it hidden on default and visible if max-width: 960px.
I could be wrong, but I think css selection by resolution would need a little help from javascript.
Here is a quick example of what that js could look like, embedded in jquery:
$(document).ready(function() {
if ((screen.width>=1024) && (screen.height>=768)) {
alert('Screen size: 1024x768 or larger');
$("link[rel=stylesheet]:not(:first)").attr({href : "detect1024.css"});
}
else {
alert('Screen size: less than 1024x768, 800x600 maybe?');
$("link[rel=stylesheet]:not(:first)").attr({href : "detect800.css"});
}
});
Hope that helps.
You can add jQuery function to change style dynamically as per scree resolution.
if(screen.width==1600)
{
jQuery('#hb-gotop').removeAttr("margin-left", "-0.9");
jQuery('#hb-gotop').attr('style', 'margin-left: -0.7%');
}
else if(screen.width==1280)
{
jQuery('#hb-gotop').removeAttr("margin-left", "-0.9");
jQuery('#hb-gotop').attr('style', 'margin-left: -0.9%');
}
else if(screen.width==1024)
{
jQuery('#hb-gotop').removeAttr("margin-left","-0.9");
jQuery('#hb-gotop').attr('style', 'margin-left: -1.1%');
}
else if(screen.width==800)
{
jQuery('#hb-gotop').removeAttr("margin-left","-0.9");
jQuery('#hb-gotop').attr('style', 'margin-left: -1.3%');
}
Answere was helpful from:
if screen resolution is less than x append css
You can do this entirely with CSS 3 using the #media command.
**#media (max-width:960px) { css... } //nothing with screen size bigger than 960px
#media (min-width:960px) { css... } //nothing with screen size smaller than 960px**
Jason Whitted makes a good point, this is CSS 3 only, so it won't work with older browsers (it should work with all modern browsers though).
You can as well do screen or device edit
#media screen { .nomobile { display: block; } } //desktops/laptops
#media handheld { .nomobile { display: none; } } //mobile devices
Or you could assume mobile devices will have a smaller width, and go on that.