Mam following fiddle, zauważ, że jeśli zmniejszysz szerokość wydruku, obraz zostanie zakryty i nie pojawi się pasek przewijania - idealny.Ujemny margines-lewy działa poprawnie, ujemny margines-prawy tworzy pasek przewijania
Jeśli I attempt the same effect on the right, otrzymam poziomy pasek przewijania - nie idealny.
Wiem o artykule overflow: hidden
, ale to zrujnowałoby mój wygląd. Próbowałem też z relative positioning, ale to nie zawijało tekstu (chociaż nie można powiedzieć, że zawijanie tekstu jest niemożliwe).
Ktoś wie, w jaki sposób mogę uzyskać to, czego chcę?
<article>
<h1>Lorem ipsum dolor</h1>
<img src="http://lorempixel.com/500/300" class="right" />
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam sit amet diam in neque venenatis semper et et dui. Nam risus ante, condimentum id neque ac, faucibus molestie purus. Pellentesque viverra ultrices lacus, sed vulputate diam lobortis fermentum.</p>
<p>Sed tincidunt tortor in lectus imperdiet bibendum. Nullam pellentesque commodo lacus, eget consequat erat convallis ut. Donec scelerisque urna urna, at aliquam nulla sagittis eu. Proin sit amet sagittis est. Phasellus tempor orci sem, id facilisis nibh tincidunt non.</p>
<h2>Sit amet</h2>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam sit amet diam in neque venenatis semper et et dui. Nam risus ante, condimentum id neque ac, faucibus molestie purus. Pellentesque viverra ultrices lacus, sed vulputate diam lobortis fermentum.</p>
<p>Sed tincidunt tortor in lectus imperdiet bibendum. Nullam pellentesque commodo lacus, eget consequat erat convallis ut. Donec scelerisque urna urna, at aliquam nulla sagittis eu. Proin sit amet sagittis est. Phasellus tempor orci sem, id facilisis nibh tincidunt non.</p>
</article>
CSS
article {
margin: 0 auto;
max-width: 500px;
}
img.left {
margin: 0 20px 20px -300px;
float: left;
}
img.right {
margin: 0 -300px 20px 20px;
float: right;
}
Hmm, na pewno w dobrym kierunku. [Zobacz moje zaktualizowane skrzypce] (http://jsfiddle.net/MrChris2013/XbWQ3/7/). Problem mam, jeśli będę w połowie myszy, nadal mogę poruszać się poziomo. Używając twojego pomysłu, zawinąłem '' w opakowaniu i to [wydaje się działać] (http://jsfiddle.net/MrChris2013/XbWQ3/6/), bądź miły, gdyby istniało rozwiązanie, które tak naprawdę nie działało dodatkowe oznaczenia. –
Chris
@Chris Nicholson: Rzeczywiście, 'overflow: hidden' nie wyłącza przewijania * per se *, a jedynie ukrywanie pasków przewijania tam, gdzie w przeciwnym razie byłyby generowane. Ale myślę, że jest to wynik czegoś innego, co ma związek z tym, jak obsługiwane są paski przewijania na "html" i "body" (ten szczególny przypadek omówiony jest w [spec] (http://www.w3.org/TR /CSS21/visufx.html)). Możesz to zrobić bez uciekania się do dodatkowych znaczników - pozwól mi edytować odpowiedź. – BoltClock
Cholera, wygląda na to, że działa w przeglądarce Firefox, ale Chrome nadal pozwala mi przewijać (środkowa myszka znowu), czy widzisz to samo przez przypadek? – Chris