CSS: повторение фона

0

У меня есть эта скрипка

На моей веб-странице мой клиент хочет, чтобы блокнот смотрел на их контент, однако они также имеют полноразмерный дизайн.

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

Так что в моей скрипке вторая строка просто:

HTML

<div id="note-top2" class="note-top"></div>

CSS

#note-top2 {
    background:url(http://i.imgur.com/8hc1eSh.png) repeat-x;
}
.note-top {
    width:100%;
    height:38px;
    text-align:center;
}

Это быстро загружается, но у нас есть полупериоды в конце.

Поэтому я попытался использовать jQuery для "взлома":

HTML

<div id="note-top" class="note-top"></div>

<img id="loop" src="http://i.imgur.com/8hc1eSh.png" alt="" />

CSS

.note-top {
    width:100%;
    height:38px;
    text-align:center;
}
#loop {
    display:none;
}

JS

function checkNoteWidth(start) {
    var el = $('#note-top');
    var loop = $('#loop');
    var elw = el.width();
    var loopw = loop.width();
    var imgCount = Math.floor(elw/loopw);
    if (start) {
        el.html('');
        for (var i=0;i<imgCount;i++) {
            el.append(loop.clone().attr('id','').addClass('loopimg'));      
        }
    } else {
        if (imgCount > $('.loopimg').length) { //if we need more images
            for (var i=0;i<(imgCount-$('.loopimg').length);i++) {
                el.append(loop.clone().attr('id','').addClass('loopimg'));      
            }
        } else if (imgCount < $('.loopimg').length) { //if we have too many images
            for (var i=0;i<($('.loopimg').length-imgCount);i++) {
                $('.loopimg').eq(i).remove();      
            }
        }
    }
}

checkNoteWidth(true)
$(window).resize(function() {
    checkNoteWidth(false);
});

Однако, если вы быстро измените размер с помощью этого или нажмите max/minim в браузере, он не работает должным образом (слишком много или недостаточно, в зависимости от того, как вы пойдете).

Есть ли у кого-нибудь идеи или предложения для лучшего метода? Какой-то способ показать фоновое изображение только после 10px?

  • 0
    размер фона в%?
  • 0
    Просто играла с размером фона, а не то, что я ищу на самом деле: /
Показать ещё 5 комментариев
Теги:
background
repeat

1 ответ

1
Лучший ответ

Вероятно, у вас будет лучший результат, если вы сделаете это на пограничном изображении и используете

border-image-repeat: round;

http://css-tricks.com/understanding-border-image/

  • 0
    Проблема с этим, IE совместимость :(
  • 0
    но, похоже, он делает то, что мне нужно : /
Показать ещё 3 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню