How hackers turn our printers, cameras and thermostats into sinister cyber army
In the fall, several large hacker attacks took place in which IoT devices were used. One of them is for Russian banks. The Daily Poster tells the story of other…

Continue reading →

Computer assembly, pitfalls
Assembling a computer, especially a new one, is a lottery game. A number of factors that are not dependent on the builder can lead to the fact that the computer…

Continue reading →

How to install WordPress on hosting
In order to install WordPress on hosting, you need to follow a few steps that we will do now. So, how to install WordPress on hosting. Step # 1 -…

Continue reading →

Advanced CSS Hacks Collection

A hack is a method that allows CSS to be perceived only by a specific browser.
Hacks can be used not only to fix bugs in the layout, but also if certain browser features are used to speed up the rendering of a web page in it (for example, CSS3 properties)

ALL KNOWN CONDITIONAL COMMENTS IN IE
Despite their fame, there are many rarely used ones.
For example, a stylesheet that will be visible to all browsers except IE versions 5-8.
<! – [if! IE] -> <link href = “styles.css” rel = “stylesheet” media = “all” /> <! – [endif] ->
Conditional comments for the 6th, 7th, 8th version (the 8th version also supports them – do not be surprised):
<! – [if IE 6]> <link href = “ie6.css” rel = “stylesheet” media = “all” /> <! [endif] ->

<! – [if IE 7]> <link href = “ie7.css” rel = “stylesheet” media = “all” /> <! [endif] ->

<! – [if IE 8]> <link href = “ie8.css” rel = “stylesheet” media = “all” /> <! [endif] ->

OTHER HACKS FOR IE
* html .class {background: red}

If the html page has a doctype, this hack only works for IE6.
In the case of quirks-mode, the hack works in IE6 and IE7.

* + html .class {background: red}

or
*: first-child + html .class {background: red}

In case the html page has a doctype, this hack works in IE7.
DIRTY HACKS OPERATING ONLY IN IE6
.class {
_background: red
}

.class {
-background: red
}

DIRTY HACKS OPERATING ONLY IN IE7
– ,. class {
background: red;
}

DIRTY HACKS WORKING IN IE6 AND IE7
.class {
* background: red
}

.class {
// background: red;
}
.class {background: red! ie}

A hack that works in IE6 and IE7 by analogy with the! Important property.
DIRTY HACK FOR IE6, IE7 & SAFARI
html * .class {background: red}

Nuance – in Google Chrome 2 does not work. The hack comes in handy for a general CSS file for IE when you need to separate styles from 8s
DIRTY HACK FOR SAFARI 3
html: root * .class {background: red}

Also does not work in Chrome 2. You can find out about the reason for using this hack and other safari hacks here.
DIRTY HACK FOR FF2, FF3
@ -moz-document url-prefix () {
.class {background: red}
}

DIRTY HACK FOR FF2, FF3 AND IE7
x: -moz-any-link, .class {background: red}

DIRTY HACK FOR FF3 AND IE7
x: -moz-any-link, x: default, .class {background: red}

DIRTY HACK FOR OPERA 9.5 AND IE7
noindex: -o-prefocus, .class {background: red}

In order to turn it into a hack only for opera, use any framing hack that does not support IE7.
HACK FOR FF2, FF3, SAFARI 3, CHROME 2, OPERA 9.5
html: root .class {background: red}
HACK FOR SAFARI 3 AND 4 !, CHROME 2
@media screen and (-webkit-min-device-pixel-ratio: 0) {
body: first-of-type .class {background: red}
}

HACKS FOR SAFARI 3, CHROME 2, OPERA 9.5
body: first-of-type .class {background: red}

@media all and (min-width: 0) {
.class {background: red}
}

HACK FOR FF2, FF3, SAFARI 3 AND CHROME 2
html: not ([lang * = “”]): not (: only-child) .class {background: red}

This hack can be used, for example, if you want for Safari and FF to make rounded corners using CSS, and for other browsers you want them to be pictures.
SEPARATION OF STYLES FROM IE6
<! – [if! IE 6] -> <link href = “styles.css” rel = “stylesheet” media = “all” /> <! – [endif] ->

html> body .class {background: red}

head + body .class {background: red}

html: first-child .class {background: red}

SEPARATION OF STYLES FROM IE6 AND IE7
html> / ** / body .class {background: red}

SEPARATION OF STYLES FROM IE6-8
* | html .class {background: red}

html: not ([lang * = “”]) .class {background: red}

ABOUT STYLE DIVISION FOR IE
Microsoft itself recommends the use of conditional comments (official blog). In my work I use conditional comments for all IE:
<! – [if IE]> <link href = “ie.css” rel = “stylesheet” media = “all” /> <! [endif] ->

And then I additionally separate the hacks * html and * + html styles for IE6 and IE7, respectively. The remaining styles are obtained for all IE.
CHANGING THE IE8 RENDERING
Adding this line to the header of the web page changes the type of rendering depending on the value of content (this is not a hack, but still a thing very similar in properties to a hack):
<meta http-equiv = “X-UA-Compatible” content = “IE = 8” />

The basic values ​​of content are as follows:
“IE = 7” – turns on the Strict mode in which all pages are rendered;
“IE = EmulateIE7” – includes IE7 compatibility mode, in which, depending on DOCTYPE, either standard rendering mode (Strict) or quirks mode (Quirks) will be used;
“IE = EmulateIE8” – the page is forced into the “IE8 Standards” mode, regardless of whether the Compatibility View mode is enabled in the user’s browser, and quirks pages are displayed in Quirks mode.
“IE = 8” – the mode of maximum compliance with the standards of “IE8 Standards” is turned on.
In case of reluctance to rewrite old projects under IE8 – you can use IE = EmulateIE7

In all the examples listed above .class is an example of a class (you can specify an id, a tag, etc.), and background: red is an example of a property and its value.

Bat files, examples
You can execute all the examples published below not only by creating and running a BAT file containing these commands, but by copying them directly to the command line. To…

...

CSS layouts: fixed, rubber, elastic. Pros and cons
What layout layout (using Cascading Style Sheets, CSS) can be considered the best? Each of them has its own hacks (quirks) and its own unique pros and cons. Will one…

...

Processor
The central processing unit (CPU) is the core of the computer, so to speak its main brain, that component that performs the bulk of the computer’s work. They usually call…

...