Jump to content
  • 0

Растягивание изображения на весь экран


The_Immortal
 Share

Question

Господа, прошу прощения за ламерский вопрос (я не спец в html совсем), но подскажите, пожалуйста, по каким причинам вот этот код

 

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Background</title>
  <style>
   body {
    background: url(https://content.screencast.com/users/immick6307/folders/Snagit/media/43d76d9a-3476-4bb7-ac03-185a3ec097bb/12.14.2021-12.42.png) no-repeat;
    -moz-background-size: 100%; /* Firefox 3.6+ */
    -webkit-background-size: 100%; /* Safari 3.1+ и Chrome 4.0+ */
    -o-background-size: 100%; /* Opera 9.6+ */
    background-size: 100%; /* Современные браузеры */
   }
  </style>
</head>
<body>
</body>
</html>

Не дает в браузерах скроллинг по вертикали? Пример взят отсюда.

Спасибо!

Edited by The_Immortal
Link to comment
Share on other sites

11 answers to this question

Recommended Posts

  • 0

Ну подумайте немного. 

Откуда возьмётся прокрутка, если страница целиком помещается в окно браузера? 
Прокрутка появляется только если контента больше, чем высота браузера.

Link to comment
Share on other sites

  • 0
1 час назад, npofopr сказал:

Ну подумайте немного. 

Откуда возьмётся прокрутка, если страница целиком помещается в окно браузера? 
Прокрутка появляется только если контента больше, чем высота браузера.

Я в конец запутался. Мне необходимо, чтобы прокрутка была ровно до конца картинки. Картинка имеет высоту 1718px. Я сделал так:

html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Background</title>
  <style>
   body {
    background: url(https://content.screencast.com/users/immick6307/folders/Snagit/media/43d76d9a-3476-4bb7-ac03-185a3ec097bb/12.14.2021-12.42.png) no-repeat;
    -moz-background-size: 100%; /* Firefox 3.6+ */
    -webkit-background-size: 100%; /* Safari 3.1+ и Chrome 4.0+ */
    -o-background-size: 100%; /* Opera 9.6+ */
    background-size: 100%; /* Современные браузеры */
   }
    .layer {
    height: 1300px;
   }
  </style>
</head>
<body>
  	<div class="layer">
	</div>
</body>
</html>

При этом у меня в браузере появляется лишний скроллинг - белый фон после фото. Экспериментальным путем вышел на высоту 1300px (почему-то!). При этом в мобильном браузере при горизонтальной ориентации экрана всё равно "лишний скроллинг" имеется.

Edited by The_Immortal
Link to comment
Share on other sites

  • 0

background-size: 100%; - задает размер вашего фонового изображения по горизонтали 100% относительно области отображения окна браузера
высота картинки подстраивается пропорционально

предположим у вас картинка 100px X 100px
если окно браузера 100px  X 100px, то у вас не будет прокрутки
если окно браузера 100px  X 50px, то у вас появится вертикальный скроллбар
если окно браузера 50px  X 100px, то у вас не будет прокрутки и после картинки будет  видна пустота

попробуйте вывести картинку через img с width=100%, размер картинки должен быть тот же, а эффект может быть нужный вам.

так же попробуйте поиграть размером окна браузера, чтобы понять как это работает

  • Like 1
Link to comment
Share on other sites

  • 0
31 минуту назад, Switch74 сказал:

попробуйте вывести картинку через img с width=100%

Я уже пробовал - этот вариант даёт отступы по краям, чего не хотелось бы...

Вообще я бы всё же хотел реализовать наверное автоматическое заполнение картинки по экрану, как это представляется по ссылке .

Попробовал так:

<html>
	<head>
		<meta name="viewport" content="width=device-width; height=device-height;">
		<link rel="stylesheet" href="resource://content-accessible/ImageDocument.css">
		<link rel="stylesheet" href="resource://content-accessible/TopLevelImageDocument.css">
		<link rel="stylesheet" href="chrome://global/skin/media/TopLevelImageDocument.css">
		<title>Background</title>
	</head>
	<body>
		<img src="https://content.screencast.com/users/immick6307/folders/Snagit/media/43d76d9a-3476-4bb7-ac03-185a3ec097bb/12.14.2021-12.42.png" class="shrinkToFit" >
	</body>
</html>

Но так выводится полное изображение... Т.е. класс "shrinkToFit" не срабатывает почему-то...

Edited by The_Immortal
Link to comment
Share on other sites

  • 0
19 часов назад, Switch74 сказал:

можно так
https://jsfiddle.net/Leph51ak/
но не уверен, что вам именно это нужно

Таким образом отрезается изображение 😞

Не могу никак наткнуться на реализацию этого shrinkToFit...

Link to comment
Share on other sites

  • 0

если оно не будет отрезаться, то оно может быть:
1. искажено (если нужно чтобы оно заполняло все пространство)
2. иметь пустое пространство снизу или обрезаться если привязываться к ширине окна
3. иметь пустое пространство по краям или обрезаться если привязываться к высоте окна
что именно вы хотите сделать?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy