Reputation: 101473
I have this CSS:
width: 98px; height: 298px; border: 1px solid; margin: 30px 25px 0px 25px;
This works fine in a style=""
inline style, but when I use it in the stylesheet the element disappears completely! This is some crazy behaviour right here...
Does anyone know of a fix/workaround for this problem?
UPDATE
If I remove the #advert
code from the stylesheet completely and put the CSS inline, but leave the id="advert"
where it is on the div, it still doesn't show up. HOWEVER, if I remove the id="advert
bit, then the div displays fine... strange.
Upvotes: 5
Views: 16938
Reputation: 1
I had same problem.
My inline css was
style="padding-left:20px;"
Which I wanted to replace with:
class="padleft"
My solution stylesheet was
.padleft {padding-left:20px !important;}
This solved my problem.
Upvotes: 0
Reputation: 101473
It's been a long time since I asked this question, however I seem to remember this was caused by me using Adblock plus - it was blocking the <div>
because it had an ID of advert
- a very simple oversight.
I've always developed with ABP off ever since, and your should check that any plugins you may be using aren't blocking/modifying your HTML in ways you don't want.
Upvotes: 6
Reputation: 6878
Its likely you have a cascade in your stylesheet that is 'hiding' the element in question somehow, and your inline styles are overriding that, so the element is visible. However, when you move the rules into the stylesheet they no longer are overriding because the selector you are using is of lower precedence than the one that is 'hiding' the element.
You can use a tool like FireBug or the Web Developer toolbar for firefox to inspect and element and see all the CSS that is affecting something. I bet you'll see something extra there you don't expect!
Upvotes: 10