All streams
Search
Write a publication
Pull to refresh
56
0
Send message
Подозреваю, что только те, кто ходит на СР, говорят что не знают, что такое СР :)
Оно слишком просто гуглится.
Программист это как медик, может быть медбратом, а может нейрохирургом. Только разница между медиками народу кое-как понятна, а виды программистов находятся абсолютно за гранью. Еще хуже слово «компьютерщик». Добрая половина населения определяют им всех людей, которые делают что-то с вычислительной техникой, что им не понятно. При этом, совершенно не важно, эникейщик это, программист или системный архитектор.
Да, я перечитал пост и увидел заметку о нормализации, которую раньше почему-то не заметил. Не прав. Не стреляте.
Есть три вида лжи — скрытая, наглая и статистика.

Андроид-смартфоны, за редкими исключениями, до конца жизни живут с заводской прошивкой, а для яблок последние обновления всегда доступны, потому популярность репортов с последней версией ОС — вполне закономерное явление. То, что айпад недежнее айфона — вообще бред, естественно, что телефонами пользуются больше людей, чем планшетниками. Это все равно что сказать: «Вероятность поломки седана больше, чем пикапа».

И да, у меня не айфон.
Ожидаем новых патентных войн?

<img src="" alt=«image»/>
Не совсем так. Если верстальщику нужны константы и работа с цветами — тогда да, можно использовать эту библиотеку. Если нужны возможности языка программирования — тогда нет. Две функции для работы с цветами написать проще, чем рассчитывать итерации вручную. Это даже велосипедом трудно назвать, скорее бытовая ситуация, обычный скриптинг. Вот так, к примеру, выглядит работа с цветами в пространстве hsl:
<?
$blue = $blueLight = array(200,50,50); 
$blueLight[2]+=30; 

function hsl($hsl) {
    return "hsl({$hsl[0]},{$hsl[1]}%,{$hsl[2]}%)";
}

function hslLight($hsl, $k) {
    $hsl[2]=min(100, max($hsl[2]+$k, 0));
    return "hsl({$hsl[0]},{$hsl[1]}%,{$hsl[2]}%)";
}
?>
.item {border: 1px <?=hslLight($blue, -20)?> solid;}
.item-1 {width: 1px; color: <?=hsl($blue)?>; background-color: <?=hsl($blueLight)?>;}
Таким образом, самый существенный недостаток такого подхода — это внешний вид кода.
Спасибо за конструктивный ответ. Да, для таких задач придется написать пару функций. Хотя, можно схитрить и использовать грязные хаки, вроде rgb-нотации и implode. Насчет читабельности полностью согласен, это недостаток, PHP режет глаз.
Сарказм понятен, я тоже от такого плевался. Но какое отношение это имеет к генерации CSS на стороне сервера и хранению цветов в базе?
Простите меня за профнепригодность. Даже константы для CSS нельзя хранить? Почему в файле можно хранить, а в MongoDB, к примеру, нельзя?
Округлить width забыл, простите мне этот огрех.
Пример: сделать так, чтобы левое меню выглядело, как сегмент круга, с возможностью настраивать степень выпуклости.
Решение:
<html>
    <head>
        <style>
<?$k=50;?>
.item {border: 1px red solid; border-radius: 5px; height: 20px; line-height: 20px; text-align: right;}
<?for ($i=0; $i<30; $i++):?>
.item-<?=$i?> {width: <?=100+sin($i/30*3.14)*$k?>px;}
<?endfor;?>
        </style>
    </head>
    <body>
<?for($i=0;$i<30;$i++):?>
        <div class="item item-<?=$i?>">Menu item <?=$i?></div>
<?endfor;?>
    </body>
</html>
Каково будет ваше решение на lessphp?
Вся мощь языка это ведь не только БД и ООП, но и такие замечательные вещи, как функции для работы со строками и массивами, регулярные выражения, и многое другое. Хорошо, БД не нужна. Опустим случаи, когда надо периодически пересобирать CSS в зависимости от каких-то состояний, для этого, вероятно, будет лучше написать что-то более организованное. Но зачем множить сущее без необходимости? Зачем подключать библиотеку, писать для неё обертку, потом интегрировтаь в систему, для решения такой простой задачи, как константы, функции и циклы в css?
10 место найдёт своё место на рынке, если весь лишний объём будет занимать аккумулятор.
7 место отличная штука, особенно если будет совместим со смартфонами.
2 место рискует повторить подвиг «Гинденбурга».
Верно, если пользователи изменили агент на некорректный, то выдавать ему дефолтный css. Если изменили на корректный — значит хотели этого, получите и распишитесь. Причём, управлять выдачей можно не на бекенде, а прямо на сервере, например в Nginx «if ( $http_user_agent ~ MSIE )».
Какие именно уникальные воможности, по сравнению с однократной серверной генерацией?
Для генерации css файла иногда используют тот же самый язык, на котором работает сайт. Например, PHP в embedded-стиле:
<?php
// пример с потолка
$clbg = '#FFF';
$clfg = '#000';
$border = 'border: 1px black solid; border-radius: 5px; margin: 0;';
$shadow = 'box-shadow: 0 0 10px rgba(0,0,0,0.5)';
?>
body {background-color: <?=$clbg?>; color: <?=$clfg?>;}
.coment {<?=$border?>; <?=$shadow?>;}
<?for($i=0;$i<10;$i++):?>
.items > .item-<?=$i?> {postition: absolute; top: 0; left: <?=$i*200+100?>px;}
<?endfor;?>

Для поддерджи префиксов браузеров можно написать отдельные переменные или функции для свойств, или же прогнать результат через регулярное выражение. Сгенерированный css складывается в докрут или кешируется веб-сервером.

Преимущества: просто в реализации, быстро генерируется; гибкость, можно использовать всю мощь языка и даже использовать БД; не нужно знать дополнительные языки разметки; не нужно устанавливать дополнительные интерпретаторы; независим от яваскрипта; можно оставлять невидимые клиенту комментарии.

Недостатки: не подходит для верстальщиков, не знакомых с языком; зависимость безопасности от верстальщика; трудно читается, особенно в редакторе без корректной подсветки синтаксиса; задача осложняется, если проект имеет компонентную структуру.
Капча для защиты от людей, очевидно же. Хотя до капчи Sony всё равно далеко.
Первый придумал рецепт вкусного пирога с маслом собственного производства. Второй его попробовал и начал штамповать такие же пироги, но с маргарином. Первый подал в суд на Второго и выиграл. Производитель маргарина, заметив неладное, договорился с изобретателя теста, и тот запретил Первому печь пироги из теста.
Есть два типа цивилизаций: которые еще не делают бекапы, и которые уже не сделают.

Information

Rating
Does not participate
Location
Россия
Registered
Activity