Jump to content
  • 0

Проблема с отображением background'а при масштабировании


Tok13
 Share

Question

Здравствуйте! Проблема такая. Делаю background в блоках DIV, в бекграунде сразу три изображения по спецификации css3, всё нормально отображается и работает, но только тогда, когда масштаб стандартный, т.е. 100%. Когда в браузере уменьшаю масштаб, то тех бекграундовых изображений, у которых ширина 1px становится не видно. Так и должно быть или от этого как-то можно избавиться, чтобы всё отображалось даже при уменьшении масштаба?

Не знаю, что сюда привести... ну, вот css код того блока, в котором исчезает:

.cont_verh_svitok_part2_center_fon {
display:inline-block;
padding:0;
margin:0;
border:0;
outline:none;
overflow:hidden;
width:189px;
font:12pt Palatino Linotype,verdana,arial,helvetica;
vertical-align:top;
text-align:center;
background:url(images/formochki_table/main_left_stolb/verh_svitok_part2_center.gif) no-repeat center top,
url(images/formochki_table/main_left_stolb/palka_horizontal_niz.gif) no-repeat bottom,
url(images/formochki_table/main_left_stolb/palka_vertical.gif) repeat-y left top,
url(images/formochki_table/main_left_stolb/palka_vertical.gif) repeat-y right top,
url(images/fons/fons_left_stolb/fon_left_stolb_1.jpg) repeat;
background-origin: content-box;
background-clip: content-box;
background-size: auto;
}

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0

Каких img?? Для бекраунда же указания top bottom left и т.д. и означают процентное заполнение относительно каких-то сторон. Т.е. растягивается-то всё растягивается и даже повторяется, но те элементы, которые имеют сами по себе маленькую длину или ширину исчезают при уменьшении масштаба)

Link to comment
Share on other sites

  • 0

Тут не нашёл, как файл прикрепить. Загрузил через ifolder. Там папка со всем необходимым по этой проблеме. CSS файл, необходимые изображения и html файл. Вот ссылка на скачивание: http://rusfolder.com/34701390

В разных браузерах при уменьшении масштаба по-разному. Где одна вертикальная полоска исчезнет, где другая, где обе. Если это невозможно исправить, то уж смирюсь, но если как-то можно, подскажите, пожалуйста)) Когда верстал это всё таблицей, вроде таких проблем с исчезновениями не было, а как начал блоками - начались.

Исчезает в firefox и в ie в основном. В chrome крайние вертикальные полосы остаются, но исчезают вертикальные полоски, разделяющие текст)

Нормальный масштаб:

hfbWHBN6.png

Уменьшенный масштаб:

IeT1Th4f.png

Link to comment
Share on other sites

  • 0

Судя по описанию, похоже на проблемы округления размеров в px при масштабировании. Суть в том, что при масштабе 0,75 или 0,5 браузер и монитор физически не могут отобразить 0,75 или 0,5 пиксела. Поэтому браузеры выкручиваются прибавлением/отниманием 1px от общей величины элемента. Теоретически можно исправить ситуацию, если сделать разделительные линии в 2px. Тогда 1 пиксел будет "в запасе" при масштабировании. Но, конечно, линии будут толще. Ну или попробовать самому блоку с горизонтальной чертой задать height:3px, а внутри уже выровнять изображение по центру.

Кстати, только что сам столкнулся с подобным в Firefox: есть <span>, за ним сразу <div> в нормальном потоке. Никаких отступов нет. Так вот, при масштабировании, между ними как раз то возникает, то пропадает 1-пиксельный горизонтальный зазор.

Edited by Kray Storm
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

  • Similar Content

    • By Алеся
      Подскажите, пожалуйста, как растянуть фоновую картинку, заключенную в div, на всю ширину вьюпорта? Сейчас она отображается посередине, по ширине макета. Указывала ширину 100%, 1200px, минимальную ширину 1200px - не работает.
      <div class="banner"> 
            <div class="container background-image">
            <div class="banner_text"></div>
            </div>
          </div>
      CSS:
      .background-image {
        background-image: url('/img/new_oranges.jpg');
        background-size: cover;
        height: 200px;
      }
    • By rpalenko
      Должно быть как на первом скриншоте. Что не так я делаю или как правильно переделать???
      Помогите пожалуйста уже всю голову сломал!
    • By Sanchous
      Подскажите пожалуйста как растянуть фон за пределы блока, который лежит в контейнере. В верстке так же использовалась библиотека Bootstrap(решение должно быть адаптивным). 
    • By mejta
      Приписал  body{
      background-image: url(img/fon.png)
      }
       Сразу фон есть ,  а после обновления изчезает.
      И так с любой картинкой
      Подробней в скриншотах
       
    • By Dizred
      Добрый день! Помогите с такой проблемой:
      Есть шаблон с общим фоном:

      Для понятности разметки поменял на другой цвет:

      Суть вопроса: надо где черный квадрат и цифра 1, вставить изображение прозрачное в самый угол, ну типо ленточки георгиевской и всё остальное залить фоном:

      Вот css:
      html{background-color:#5d1338;} body{background:url(../images/purple/bg.jpg) no-repeat top center;} a.read_more{background-color:#ff9694;} .button_divider{border-bottom:1px #6a2146 solid; border-top:1px #6a2146 solid;} a{color:#ff9694;} h1 span, h2 span, h3 span, h4 span, h1 strong, h2 strong, h3 strong, h4 strong{color:#ff9694;} ul#main_menu li a.selected {color:#ff9694;} ul#main_menu li a:hover, ul#main_menu li.current-menu-item a{color:#ff9694;} ul#main_menu ul li a {color:#ff9694;} ul#main_menu ul li ul li a {color:#ff9694;} .footer_menu ul li.selected a{ color:#ff9694;} .footer_menu ul li a:hover{ color:#ff9694; } .post_date, .post_date_nothumb, .service_pricespecial, input#searchsubmit, ul.filter_portfolio li.selected a, ul.filter_portfolio li a:hover, input.form_submit, a.icon_link_img{ background-color:#ff9694;} .footer_text a:hover{ border-bottom:1px dotted #ff9694;} ul#main_menu ul, ul#main_menu ul li ul, .flex-caption {background-color:#5d1338;} a.more, .left13 ul li, .entry ul li, .sidebar ul li{ background:url(../images/purple/bullet.png) no-repeat left;} .home_underslider{ background:url(../images/purple/home_underslider.jpg) no-repeat center top;} .slide_frame{background:url(../images/purple/slider_frame.png) no-repeat center;} .footer{background-color:#460d29;} .footer_text, .footer_menu ul li a{color:#b05877;} @media screen and (max-width: 1024px) { .show_menu, .hide_menu, ul#main_menu, ul#main_menu ul{ background-color:#5d1338;} ul.filter_portfolio li.selected a, ul.filter_portfolio li a:hover{background-color:#5d1338;} ul.filter_portfolio li a{color:#ff9694;} }  
      Помогите пожалуйста это сделать  
      Вроде получилось подробно описать суть вопроса...
×
×
  • 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