Pull to refresh

Comments 68

я бы сказал что логичней начать все тэги спан в одном месте а закрывать в разных( там где нужно), тогда размеры не уменьшать, устанавливая их меньше 100%, а увеличивать, устанавливая больше 100%

а вообще от перемены мест слагаемых сумма не меняется. ;))
Я даже удивился, что все так просто :-). Спасибо habratchanka.
а может кто-нибудь придумать хоть одно практическое применение сего чуда?
это не важно :) "но какая музыка.." (с) Масяня
Вот кстати тот же вопрос назрел! Круто... прикольно... НО ЗАЧЕМ?! :)
названия нижних 3 альбомов вижу нормально
те, что выше уже не поддаются моему зрению
Не знаю, имеете ли вы отношение к этому ресурсу, но мне там понравилось. Заинтересовало больше, чем сам топик :)
к проекту отношения не имею. На хабре баннер просто крутится про него и я запомнила, что там есть похожая реализация
Да) Очень хорошая идея с сортировкой музыки по настроению..
Вот бы на last.fm такое. Да и слушать бы разрешили бесплатно %)
ну... :))) можно сделать "лестницу тегов" :)))
Стремянку блин :)
to habratchanka Ну в принципе если тока треклист показывать... только там не только текст в перспективе..
Меню. Выбираем пункт - он становится большим, а пункты до и после - лесенкой уменьшаются.
Ну, если надпись желтая на черном фоне и саундтрек: там, там, там, та-ра-ра-рам, там, та-ра-ра-рам. То можно сделать вступительные титры типа "Episode IV..."
а подгонять количество символов в строке вручную?
ну почему же вручную. Все зависит от ваших навыков работы например с JS или php. Текст можно легко разбить на строки программно так как вам надо. Я же говорю - дальше только ваша фантазия :)
ага. с помщью js определять размер символа и вставлять span где надо....
сомнительное реешние.
UFO just landed and posted this here
Причем здесь это, если серьезно? :)
UFO just landed and posted this here
Я понимаю это всё для блока с фиксированной шириной. Есть идеи как сделать текст тянущимся по горизонтали без особых извращений (чуть-чуть можно) в js? ^_^
если всё будет делаться машиной, то можно и стилей нагенерить точно так же

красивые css-решения позволяют избегать машинного труда, а здесь все эти достоинства нивелируются
почему же
при помощи любого скриптового языка можно разбивать строки как душе угодно
UFO just landed and posted this here
Что-то похожее:
http://worldfirefoxday.com/
задумка интересная у них, но о кроссбраузерности они не подумали.. в опере лучше не смотреть :))
А мне картинка нравится, этак декадентски выглядит.
Мне тоже стало интересно ) Потратил 5 минут на написание и 10 на отдирание своей библиотеки от написаного ))
Такая ностальгия по ушедшим годам, когда я только узнал что такое js и делал простелькие эфекты... Порылся в архивах и такое умиление испытал рассматривая свои первые каракули...
Вот рабочий пример: http://paul.dovbush.googlepages.com/test-zoom.htm. Где можно применить только не понятно. Скорее уж вот это http://www.artlebedev.ru/tools/technogrette/js/zoom/ можно где-то использовать.

function dZoom(config)
{
    for(var i in config)
        this[i]=config[i];

    this.init();
}

dZoom.prototype={
    target:null,    // effect target UL
    delta:10,    // decrease size delta
    max:150,    // max font size
    min:30,        // min font size
    unit:'%',        // font size unit

    init:function()
    {
        if(typeof(this.target)=='string') this.target=$(this.target);
        if(!this.target) throw 'dZoom>> src required';

        // remove useless childNodes
        var chs=this.target.childNodes;
        for(var i=0; i<chs.length; i++){
            if(chs[i].nodeType!=1)
                this.target.removeChild(chs[i--]);
        }

        addEvent(this.target,'mouseover',delegate(this,this.hover));

        this.reflow(this.target.firstChild);
    },
    hover:function(e)
    {
        var sender=e.target||e.srcElement;
        if(sender.nodeName!='LI') return;

        this.reflow(sender);
    },
    reflow:function(li)
    {
        var max=this.max, delta=this.delta, min=this.min, unit=this.unit; // cache
        var cp=li, i=0;

        while(cp){
            cp.style.fontSize=Math.max((max-delta*i++),min)+unit;
            cp=cp.previousSibling;
        }

        cp=li.nextSibling, i=1;

        while(cp){
            cp.style.fontSize=Math.max((max-delta*i++),min)+unit;
            cp=cp.nextSibling;
        }
    }
};
все-таки забавно заниматься такими глупостями... Вот, добавил еще градиент цвета туда же и поправил одну глупость.

http://paul.dovbush.googlepages.com/test-zoom2.htm
Оффтопик:
Как что-то запостить? Пытаюсь добавить [http://habrahabr.ru/topic/add/] - вываливается редирект на [http://www.habrahabr.ru/info/wiki/?title=%D0%9A%D0%B0%D1%80%D0%BC%D0%B0] с ошибкой логина к БД
Читаю [http://habrahabr.ru/info/help/karma/] и понимаю, что чтоб запостить что-либо надо уже иметь карму.
В «Я умный» написано, что можно постить без кармы, а в хэлпе - что уже нельзя.

Вопрос: где взять кармы? )))
плюсики у коментариев это что? имеют они какое-то отношение к карме? У меня никак не отражаются - вот и получается, что единственный способ добыть кармы - выпрашивать ее в офтопиках )

ЗЫ: читаю хабр 4 месяца. решил вот присоединиться т.к. радует на удивление вменяемая комьюнити.
Зачем нужна карма - читай только тут, а не по блогам.
Плюсики - нравится/не нравится пост.
К карме прямого отношения не имеют. Но если твой коммент очень сильно всем понравился, то кармы они тебе за это добавят и тогда сможешь постить
спасибо, понятно.
т.е. тему для обсуждения сообществу я предложить не могу, а могу только участвовать в чужих дискуссиях. проблема в том, что активная дискуссия чаще всего длится меньше дня, а время для участия удается выбрать не всегда. на форумах, где активная тема всплывает вверх в этом смысле проще...
спасибо за карму. сегодня опубликую статью для публикации которой она мне была нужна.
При изменении размера шрифта получается фарш... точнее перспектива рушится... на одной строке становятся слова с шрифтами разных размеров...
тогда сделать строки блочными и очистить привязку по бокам

#text p span {
font-size : 1.1em;
display:block;
clear:both;
}


в примере разбивка идет за счет того что ширина установлена для блока
UFO just landed and posted this here
Привет! Я на сайте первый раз, по-моему хабратчанка очень смекалистая, за последний год не встречал умных девчонок!
спасибо :) Но уверена (и очень надеюсь :)), что я такая не одна :)
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
Держись, Хабратчанка! Что-то молодые люди тебя заклевали!!!
По-моему вам просто не повезло, но это не важно.
Я думаю, что в том, что предложила посмотреть профиль habratchanka нет ничего сверсложного или нелогичного.
Больше волну нагнали. Я не понимаю, как на хабра-тематическом сайте такое может удивить.
Однако, подход к решению задачи вполне не глупый и "чистый". Не магия, просто человек знает css :)
Интересно реализовано, жаль только не кросс-браузер:)
А кто помнит.. старый такой ресурс, который показывал "Star Wars" в ASCII? Вот там такая же идея реализована: убегание текста в перспективу. Ну, как в начале оригинального фильма: "Империя захватила власть во вселенной... бла-бла". Но вот реализация на CSS, безусловно, оригинальная. Кароче, в голд:)
Update: Бессовестно наврал в предыдущем посте. Пересмотрел начало фильма на http://www.asciimation.co.nz/. Убегания текста в перспективу там нет. Так что все очень оригинально:)
da ne imeet zna4eniya gde mogno bydet primenit' takoi priem.Glavnoe to,4to on otragaet syshnost' do4enih elementov
интересно ))
не было ни разу мысли что то подобное сделать )
И от меня спасибо!
Просто, элементарно, красиво.
Хабратчанка умница :)
Натыкался на эту технику в каком-то посте вроде «999+ Awesome CSS Techniques», впечатлило. После просмотра исходника впечатление пропало — если бы можно было делать эту лесенку из сплошного текста, без разбивки span'ами, она бы имела смысл.
По-моему, с этим удивительным решением встречался любой верстальщик, хоть раз забывавший закрыть тег в цикле.
А вы уверены, что блок &lq;div id='text'&rq; действительно необходим? Ведь
&lq;p id='text'&rq; даст то же эффект, если упростить таблицу стилей до

#text span {
font-size : 1.1em;
display:block;
clear:both;
}

можно и так, если никаких больше причесываний делать не нужно. С элементами можно экспериментировать на свой вкус :)
Да, дальше уже игра воображения и то, куда это всё будет вставляться. Можно же и clear:both; убрать. Елемент span же и так блочный и должен скидываться на сл. строку, но это опять же, всё по ситуации.
Вообще да. Просто у меня есть такое мнение, что примеры должны как раз иметь минимальное количество необходимых элементов и свойств. Что бы было понятнее, откуда ноги растут.
Думаю это сделано для варианта копи/паст.
Т.е. вставил и забыл :)
А думать-то, конечно, оно всегда интересней.
Может и вправду тогда делать по минимуму, чтобы народ мыслительный процесс подключал)
Елемент span же и так блочный должен скидываться на сл. строку

Это вы откуда взяли? :) span никогда по умолчанию никогда не будет скидывать на другу строку, Он inline, а не block
да, span inline элемент, но в данном примере он переопределён с блочный элемент.
Поэтому для большего упрощения кода можно clear:both; убрать.
Прикольно, конечно, однако – невалидные богохульства =]
это из-за этого поста ваша карма так улетела?
Проверил данный HTML и CSS на валидаторе ( http://validator.w3.org/ и http://jigsaw.w3.org/css-validator/) - ни одной ошибки :-)
Sign up to leave a comment.

Articles