pavki/hr_qa_sbs_best_bad huggingface dataset:
Вопрос: ОШИБКА ...from origin 'null' has been blocked by CORS policy: ... Как решить?

Лучший ответ: Запустить какой-нибудь сервер, и слать запросы через него, т.к. ajax'у запрещено получать файлы напрямую.

Худший ответ: ip.php исправить на<?php
header('Access-Control-Allow-Origin: *');
echo $_SERVER['REMOTE_ADDR'];
перейти в директорию с index.html и запустить в консолиphp -S 127.0.0.1:8080
в браузере набрать 127.0.0.1:8080
Вопрос: Почему не включается nginx?

Лучший ответ: Как минимум не вижу закрывающей скобки секцию server server {
        listen 80 default_server;
        root /var/www/html;

        index index.php index.html index.htm index.nginx-debian.html;

        server_name localhost 127.0.0.1;
        access_log /var/log/nginx/access.log;

        location / {
                proxy_pass 127.0.0.1:80;
                proxy_set_header Host $host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $remote_addr;
                proxy_connect_timeout 120;
                proxy_send_timeout 120;
                proxy_read_timeout 180;
                try_files $uri $uri/ =404;
        }
        location ~*\.(jpg|jpeg|gif|png|ico|css|bmp|swf|js|html|txt)${
                root /var/www/html
        }
}
И да proxy_pass в настройках nginx указан у вас 127.0.0.1:80, а apache то запущен на *:8080

Худший ответ: А вот в предпоследней строчке у тебя точки с запятой нет. Это ты скопировал тоже неправильно или её реально нет ?
После вот этого
root /var/www/html
И читаем документацию.
Должен быть префикс http://proxy_pass http://127.0.0.1:8080;
Вопрос: Как выполнить код после завершения действия?

Лучший ответ: Читаем документацию внимательнее:

Первое, что нужно знать — store.dispatch может обрабатывать Promise, возвращаемый обработчиком действия, и также возвращает Promise
Возвращаете из своего действия промис - then - вызываете что там вам надо.

Худший ответ: 0xD34F прав на все 100%.
А уж если разжёвывать, то в вашем случае это можно или так:this.$store.dispatch('administration/setEditNewGroup', this.formGroupData).then(() => {
// Здесь вставить код, что всё ок
}).catch((error) => {
// Обработка ошибки
})
Или через асинки:async handleSaveGroup(){
try {
      await this.$store.dispatch('administration/setEditNewGroup', this.formGroupData);
// Здесь вставить код, что всё ок
}
catch (error) {
// Обработка ошибки
}
    }
Вопрос: Как в robots.txt запретить к индексации дочерние страницы раздела?

Лучший ответ: Делайте так:
Allow: /клиенты/$ - Разрешает индексацию только такого урла
Disallow: /клиенты/* - Запрещает индексацию все что после слеша
Проверьте через панель вебмастеров Гугл и Яндекс
Лайк, если помог)

Худший ответ: Лучше закрой страницы клиентов через meta robots noindex,nofollow. Так правильнее будет.
Вопрос: Почему не работают аудио-выходы на ПК?

Лучший ответ: Скорее всего из-за большого напряжения сгорел звуковой чип на материнке.
Так же иногда во время грозы на материнках сгорают чипы сетевых карт.
___________________________________________________________________________________________________________
Можно отнести в сервис и там вам заменят чип звуковухи, или же дешевле купить PCI или USB звуковуху)

Худший ответ: может дрова оригинальные попробовать поставить или сбить настройки на материнской плате как вариант
Вопрос: В чем разница между Git и GitHub?

Лучший ответ: Та же, что и porn и pornhub ;)
Первое - название системы, вторая там где все это лежит

Худший ответ: Gitbush - это консоль, где вы прописываете все команды.
Десктоп версия - это все та же консоль, только имеющая интерфейс, вы нажали на кнопочку в ней, выполнился запрос, который вы бы писали так же в консоли.
Сразу скажу, разницу не знаю между ними, но сам башем пользуюсь, потому что привык к консоли.
Вопрос: Как узнать нужно ли это людям?

Лучший ответ: Очень часто, люди которые хотят перемен не представляют их цену. Если вы воплотите все что хотят пользователи, то получите робота, который умеет все и не кому не нужен. 
https://www.youtube.com/watch?v=fB0XwZpfEBo&index=... - в этой лекции (и в других данного курса) как раз рассказывают как это спланировать и проверить.

Худший ответ: Вы вроде как сами ответили на свой вопрос, нет?
Вопрос: Какие есть сервисы уведомления о новых публикациях на различных сайтах?

Лучший ответ: Сам пользуюсь расширением для хрома Distill Web Monitor, как раз для таких случаев.
Можно выбрать часть страницы и частоту отслеживания изменений.

Худший ответ: Сервис дает возможность вам самим создавать RSS-каналы из любых веб-страниц. Фактически, Feed43 предоставляет универсальный API на основе RSS к любому сайту, любой странице и даже любой части страницы. 
https://habrahabr.ru/post/37780/
+Еще похожих:
https://www.google.ru/search?q=yahoo+pipes+alterna...
Вопрос: Как сделать такую кнопку?

Лучший ответ: Жму руку дизайнеру, молодец, не как у всех.

Прямо так, как на скриншоте, на чистом CSS вряд ли получится, ибо левый нижний угол строго вертикальный, а вот правый... вообще с трудом такую фигуру представляю в реальности, поэтому вариант с трансформацией средствами браузера тут отпадает. 

Изначально я не обратил внимания, что нижний край строго горизонтальный, и накидал такое как стартовую точку

snippet

Но когда заметил - понял, что так в принципе не выйдет сделать, на CSS нельзя "зафиксировать от трансформации" две стороны сразу.

Так что остаётся вариант с фоновой SVG-шкой, что по сути "фоновая картинка", либо вариант со вставкой этой SVG напрямую в кнопку (прям инлайном) и дальнейшие манипуляции с ней, если требуется адекватный ховер.

Делать лень, это нетрудно :)

Худший ответ: svg

второй вариант магия css
что то типа трансформа и фильтров
Вопрос: Где найти базу городов как у Airbnb?

Лучший ответ: Много работаю с такими системами, вариантов много
На самом деле предложу свои 3 варианта: 
1) download.geonames.org/export/dump
2) wiki.openstreetmap.org/wiki/Nominatim это nominatim.openstreetmap.org но тама тоже лимиты, но с применением прокси все решаемо, также можно свой собственный номинатим реализовать но нужен крутой серв и время)))
Я первый раз через прокси всю землю собрал - все точки на карте которые имеют страны - мне нужны были координаты стран именно, чтобы потом скормить их гугломапсу уже)
3) Гугломапс - но лимит 2500 запросов в сутки, но есть варианты) Например парсить не через геокодер, а через АПИ мест https://developers.google.com/places/web-service/search
Можно скармливать точку и узнавать её адрес, если ввести номер карты то бесплатно уже не 2500 запросов а 150 000 - а это уже нормально, можно иметь 5-6 аккаунтов на карты родственников и будете счастливы) (у меня лимит полтора ляма в сутки)
Если вы хотите реализовать на сайте выпадающий список с подсказками то не изобретайте велосипед и ставьте подсказки гугл мапс - причем как пользователю добавляющему инфу, так и тому кто ищет - и данных храните . в БД и будет вам счастье, тама при подсказках можно настроить что позволять вводить, например тока адреса, тока города - покопайтесь внимательно https://developers.google.com/maps/documentation/j...
И также если введете кредитку то будет до 150 000 запросов в сутки - а этого даже если вы делаете Airbnb то на первый год работы вам хватит, а за это время и БД наберете и денег на платные пакеты

Худший ответ: https://www.wikidata.org/ - там есть интерфейс для доступа https://query.wikidata.org/ 
Но это язык - https://ru.wikipedia.org/wiki/SPARQL
wikidata - проект для доступа ко всей базе знаний вики. Очень мощная штука.. Можно кучу всего спарсить.
Для примера парсил базу из городов на разных языках с их гео координатами.
Вопрос: Как составить SQL запрос?

Лучший ответ: UPDATE dataset d
SET d.price = 
   (SELECT TOP 1 price FROM dataset d1 WHERE 
    d.good_id=d1.good_id AND d.owner_id=d1.owner_id AND d1.price IS NOT NULL AND 
    d1.year_id<=d.year_id AND d1.week_number<=d.week_number 
    ORDER BY d1.year_id DESC, d1.week_number DESC)
WHERE d.price IS NULL
Правда этот запрос ищет ближайшую дату, меньшую пропущенной.

Худший ответ: Для SQL всегда должна быть определённость: "по возможности в ближайшую" — должно стать "ближайшую". И что делать с товаром, если такой цены нет.
Вопрос: ProxMox и XenServer, установка preconfigured виртуалок?

Лучший ответ: Веб приложение собирает данные а после по API производит нужные действия.
Сслыка на доку по proxmox VE API - https://pve.proxmox.com/wiki/Proxmox_VE_API

Худший ответ: айпи в том же  линуксе и виндовсе для ксена и квма задается внутри если конечно нет дхцпд 
так что все придется допиливать
Вопрос: Как убрать свободное пространство, если нет картинки?

Лучший ответ: Поставить констрейн на высоту  imageView. Если изображения нет, то меняем значение констрейна на 0.

Худший ответ: Показывать картинку "нет фото" ?
Вопрос: Ресурсы для вдохновения маркетолога?

Лучший ответ: Здесь есть 43 ресурса для Маркетологов, здесь еще 18 - это две лучших (не реклама) статьи-списка о подобных вещах, на мой взгляд.

Худший ответ: Блог TexTerra.
Сайт AdMe, вкладка про рекламу.
Вопрос: Очень долго прогружаются карточки товаров, что делать?

Лучший ответ: Оптимизация бд
Добавление индексов 
Кэширование

Худший ответ: Ну нет, тут, похоже, дело не в запросе.
Хоть Query Monitor и отнес запрос на скриншоте к медленным (видимо, относительно остальных), это не так, потому что 0.06 сек (т.е. ~60 мсек) - это почти моментально. 
А страница грузится далеко не моментально.
В общем, я считаю, искать надо не в запросах БД, а в остальной части кода.
Вопрос: Давно ли метод vk api photos.get начал требовать авторизацию?

Лучший ответ: С апреля 2017 года сервисный ключ доступа обязателен для работы с этими методами (не включая методы секции secure):
newsfeed.search
wall.search
С мая 2018 года сервисный ключ доступа обязателен для работы с этими методами:
users.get
wall.getComments
friends.get
groups.getMembers
likes.getList
С 14 мая 2018 года сервисный ключ доступа обязателен для работы со всеми методами. 
https://vk.com/dev/service_token

Худший ответ: Так как решили вопрос?Я использовал сервисный ключ из приложения,а он вернул этоvk.exceptions.VkAPIError: 28. Application authorization failed: method is unavailable with service token.. request_params = {'oauth': '1', 'method': 'messages.send', 'v': '5.67', 'user_id': '29353463', 'message': "РўС‹ РґРѕР»Р±Р°РµР±,РјСѓРґРёР»Р°. РќР°РїРёС€Рё 'РїРѕРјРѕС‰СЊ', С‡С‚РѕР±С‹ СѓР·РЅР°С‚СЊ РјРѕРё РєРѕРјР°РЅРґС‹", 'attachment': ''}
Вопрос: Что это за вид атак и как можно бороться с ним?

Лучший ответ: Этих сканеров тысячи, если вы посмотрите логи вашего домашнего роутера, увидите что и там несколько раз в день боты ищут wp-admin.
Можно настроить что-то вроде fail2ban, который будет их вычислять и банить по ip, ну или порсто забить. Нагрузка от них несущественная, обычно.

Худший ответ: Никак. Т.е. забить. Это обычные скрипты - сканят кого бы еще поломать в интернетах. Ну или внести такие УРЛы в черный список и отдавать им 403.
Вопрос: Почему говорят что forEach меняет начальный массив, если он ничего не меняет?

Лучший ответ: Не меняется, т.к. а - это значение элемента массива. Но если бы это была ссылка на значение (на объект например), то менялось бы.arr = [{a: 1}, {a: 2}, {a: 3}]; 
arr.forEach(a => {
  a.a++;
})
console.log(arr) // [{a: 2}, {a: 3}, {a: 4}]
В таком случае да, значения объектов поменяются. Но если вы измените ссылку, то нифигаarr = [{a: 1}, {a: 2}, {a: 3}];
arr.forEach(a => {
  a = { a: a.a+1 };
})
console.log(arr) // Тут все по старому
Также, можно поменять значение массива по ключу.arr = [1,2,3]
arr.forEach((a, ind) => {
  arr[ind]++;
})
console.log(arr) // [2,3,4]

Худший ответ: В вашем примере, где массив содержит элементы примтивного типа Number, в функцию передаётся значение. Изменение внутри функции не распространяется на изменение в массиве.
Если бы в функцию передавались объекты, передача была бы «по ссылке» и изменения в эти объекты отразились бы сразу в массиве.
В вашем примере можно задействовать два других параметра: индекс элемента и сам массив и явно поменять элементы массива:arr = [1,2,3]
arr.forEach((a,i, theArr) => {
  a = a + 1 ;
  theArr[i] = a;
})
console.log(arr) // [2,3,4]
Поробнее про передачу by value / by reference на англ. на SO. Пример оттуда:function changeStuff(a, b, c)
{
  a = a * 10;
  b.item = "changed";
  c = {item: "changed"};
}

var num = 10;
var obj1 = {item: "unchanged"};
var obj2 = {item: "unchanged"};

changeStuff(num, obj1, obj2);

console.log(num);        // 10
console.log(obj1.item);  // changed   
console.log(obj2.item);  // unchanged
Вопрос: Как перенаправить виртуальный хост на виртуальную машину?

Лучший ответ: Я нифига не сис админ, поэтому за термины просьба не кидаться
VirtualBox в режиме моста сделай, он "расшарит" айпишник, сделает общим внутренний. Далее обычная настройка в апаче и не смотря на то, что один на сервере, а другой на вб - он будет доступен под одним айпи.
И, да, а зачем такая ебала? Не проще сделать оба на хостовом сервере, зачем в вб еще один заворачивать? Так только вычислительные ресурсы пожрет больше...

Худший ответ: Настраиваешь виртуальный хост в апаче(хотя я не его сторонник, просто в дано был он) и проксируешь трафик на виртуалбокс. Профит.
https://httpd.apache.org/docs/2.4/mod/mod_proxy.html
Вопрос: Почему создаётся допольнительный файл с рафсширением вроде name.twig.php?

Лучший ответ: вангую: это скомпилированные шаблоны.
непонятно только при чем тут шторм.
для вас, видимо, новость, что шаблонизаторы при первом запуске транслируют шаблоны в обычный php-код.
отсюда и появление php-файлов. обычно, для удобства, им отводят отдельную директорию cache/compiled/etc.
теперь почему они не меняются. для этого есть 3 причины:
- не изменился шаблон
- настройками отключена перекомпиляция шаблонов
- что-то пошло не так или все поломалось

Худший ответ: Как написал DevMan это скомпилированные шаблоны, так как при каждом запросе компилировать .twig файлы в .php слишком дорогая операция, при изменении файла они должны автоматические перезаписываться, если этого не происходит, смотрите конфигурацию twig, возможно у вас выключен dev режим.
Вопрос: В чем смысл аутентификации через социальные сети?

Лучший ответ: 1) нет
2) нет
3) просто удобство

Худший ответ: чтобы все сомнения и вопросы отпали, просто бегло капните например устройство ulogin.ru
Вопрос: Самый быстрый путь изучения python?

Лучший ответ: марк лутц изучаем python
марк лутц программирование на python
ну и идти джуниором

Худший ответ: Ага, достаточно одну книгу прочесть и сразу средней сложности проекты делать. 
Не бывает так. Надо идти на джуниора и набираться опыта. Один коллега за полгода так вырос.
Вопрос: Как в jquery передать переменную js и потом вытащить ее значение обратно?

Лучший ответ: Ajax запрос выполняется асинхронно. Т.е. запрос отправляется, но ответа никто не ждет, начинается проверка почты регуляркой и т.д. В результате, к тому времени, как с сервера придет ответ ваш скрипт уже закончил работу, и этот VALID уже не используется.
Рекомендую почитать про асинхронные запросы, коллбеки и промисы.
Еще можно все это разобрать на куски, и привязать не на сабмит формы, а на change отдельных полей.
Т.е. юзер вводит мыло - и оно сразу проверяется, не дожидаясь заполнения других полей. Вводит два раза пароль - они сразу сравниваются. Круто же!

Худший ответ: В итоге получилось так:// проверка совподения логина в базе
  if (login.length > 0) {
   if (errLogin.length < 1) {
   $.ajax({
     url: "ajax.php?funk=login&login=" + login,
     success: function (data) {
       data = jQuery.parseJSON(data);
       var bdLogin = data[0].login;
         if (login.localeCompare(bdLogin) == 0) {
         VALID = false;
         errLogin = "Пользователь с таким логином уже зарегистрирован";
       }
       $('#errLogin').html(errLogin);
     },
     async: false
   });
  }
  document.getElementById('errLogin').innerHTML = errLogin;
  }
Вопрос: 64GB ОЗУ — как выжать максимум?

Лучший ответ: Которая пустует - ту выковырять из сервера и продать. Чтобы не пустовала.

Худший ответ: Раздуть системные буферы и буферы СУБД, активнее использовать кэширование в приложениях, перенести временные файлы на RAM-диск.
Вопрос: WordPress или MODx Revolution для корпоративного сайта?

Лучший ответ: WordPress - это лидер, №1 на рынке по доле сайтов, на базе которого делают сайты мировые бренды у которых есть деньги на грамотных специалистов, которые уже давно не задаются такими вопросами.
MODx - это платформа для гиков с игрой юношеского максимализма в попе и любителей всего не обычного. По доле рынка даже рядом с WP не стоит. Удел маргиналов.
Если вам задачи бизнеса решать, достигать целей, добиваться результатов и зарабатывать деньги то WordPress.
Если хочется тешить свое самолюбие, бросить вызов обществу, узнавать новые интерфейсы, поискать на жопу приключений то MODx.
Как то так выглядит ответ в моей голове  )

Худший ответ: где будут статические страницыстатический сайт на хтмл
Для упрощения можно использовать сборщик стат сайтов типа https://help.github.com/articles/using-jekyll-as-a...
Вопрос: При сборке проекта пропадает картинка, как исправить?

Лучший ответ: Сначала добавьте в код функцию:def resource_path(relative):

    if hasattr(sys, '_MEIPASS'):
        return os.path.join(sys._MEIPASS, relative)
    else:
        return os.path.join(os.path.abspath("."), relative)
а потом обращайтесь к ресурсам примерно так:self.setWindowIcon(QtGui.QIcon(resource_path('runcubit_gui.ico')))
self.tray_icon.setIcon(QtGui.QIcon(resource_path('runcubit_gui.ico')))
Это будет работать и при прямом вызове питоновского скрипта, и после PyInstaller'а.

Худший ответ: Когда я собирал свой проект в один файл (--onefile) через pyinstaller, помиимо использования resource_path (как уже написал Andy_U) я картинки также прописывал и в my_project.spec-файле в блоке datas в Analysis - datas=[('background.png', '.'), (...)...] - "загружать картинки в сам exe файл".
И уже после этого запускал на сборку изменённый spec: "pyinstaller my_project.spec" - тогда всё работало.
Если нужны подробности или пример - напишу дополнительно.
Вопрос: Не получается отвязаться от консоли (создаю php-демон), почему?

Лучший ответ: <?php
 
// создаем дочерний процесс
$child_pid = pcntl_fork();
 
if ($child_pid) {
    // выходим из родительского, привязанного к консоли, процесса
    exit;
}
.....

Худший ответ: Я для отвязки от консоли использовал nohup незнаю насколько подойдет для ваших задач
Вопрос: Что в express называют midleware?

Лучший ответ: Middleware - в переводе "промежуточный слой". По факту - это функция, через которую автоматически проходят запросы. Можно задать функции, через которые будут проходить все без исключения запросы, а можно назначить эти функции определенным запросам.
Я бы еще добавила, что этот слой (который определяется пользователем) не является обязательным, но его удобно использовать для выполнения какой-нибудь дополнительной логики. Например, нужно проверять все запросы на удовлетворение определенному условию и перенаправлять запрос на другой адрес в случае необходимости.

Худший ответ: let a = 11

app.use('/', function middleware(req, res, next) { //в пеовом middleware делаем вычисления
  a = 11 + 4;
  next() //Идём дальше
}, function otherMiddleware (req, res, next) { //В этом middleware выводим значение
  if(req.url == '/') { // Проверяем существует ли url
    res.send(`Hello world ${a}`) // Отправляем значение, если есть
  } else {
    next() // Идём дальше. Например на функцию, которая отобразит 404
  }
})
Вопрос: Как с помощью drupal views выбрать 5 последних нод и отсортировать их в случайном порядке?

Лучший ответ: А в чём собственно проблема? Делаете выборку по типу материала, ограничиваете вывод 5 материалов, а в сортировке выбираете global — random. Всё.

Худший ответ: Выводите 5 последних нод, перемешиваете с помощью:function hook_views_pre_render(&$view) {
  shuffle($view->result);
}
Вопрос: Примеры идеального кода?

Лучший ответ: Идеальный код, философский камень, эликсир жизни - это вам к окультистам ))
Но для структуры вам подскажу то, что скрывают многие: мир никуда не ушел от газетного макета.
А раз так, то вот вам логика построения страницы или "морды сайта": 
подробности тут: www.i-type.ru/osngazett.html
Остальное зависит от фантазии разработчика и "тут как там, но с этим" - требованиями заказчика.
Как и что реализовывать подробно описано в инструментах от jQuery до HTML5 и других...

Худший ответ: Примеры идеального кода должны сопровождаться реальными задачами, для которых каждый пример написан, с указанием всех условий, вплоть до бюджета и сроков.
В частности, далеко не всегда от кода требуется хорошая структура и логика.
Если пример оторван от задачи, то он никакой не идеальный.
Так что даже не знаю, что вам и показать идеального... Может, лучше вам собственное мышление развивать, а не искать готовое?
"Нередко испытываю отвращение от своего конечного кода"
Рекомендую смотреть не на код, а на результат - удовлетворить потребности заказчика.
Так он доволен? Он платит деньги (ему оно нужно)? Он вообще есть?)) 
Если все это так - радуйтесь, вы сделали свою работу хорошо, все у вас хорошо (бывает много хуже), и вам не нужны чужие линейки для измерения "идеальности".
Вопрос: Браузер постоянно запускается раз в один период времени?

Лучший ответ: Во первых проверьтесь не типа антивирусом, а нормальной утилитой, к примеру вот, от касперского, бесплатная devbuilds.kaspersky-labs.com/devbuilds/KVRT/latest...
Во вторых проверьте планировщик заданий (ищите в панели управления), чаще всего вся эта запускаемая дрянь живет там.

Худший ответ: ну ты крут пацан.
накачал себе вирусни
потом спрашиваешь совета
но не указываешь операционную систему (а ведь в разных ОС это все по разному)
Вопрос: Готовый движок для торговой биржи. Может кто посоветовать?

Лучший ответ: Чтобы была очередная наебиржа? Не, спс))))))))))))
пысы. Помоему таких нет, оно понятно почему. Специализация узкая, в опенсорс никто не будет разрабатывать.

Худший ответ: SolidMinus 
Спасибо, но не совсем корректно делать выводы о других, нарвавшись когда-то на мошенников.
Или NYSE / Deutsche borsa / и т.п. для Вас тоже наебиржи?
А вообще, в глубине души подозрения аналогично Вашему ответу закрадывались (про узость специализации и соот-но отсутствие поделок). Если никто не отпишется - будем Вам плюсик )
Вопрос: Какие крутые гайды/курсы/лекции/источники по UX/UI вы знаете?

Лучший ответ: Большинство курсов по UI/UX — дичь. С видеоуроками тоже напряг. А вот хорошего зарубежного текстового материала достаточно. uxdesign.ccwww.interaction-design.org — у них, кстати, есть еще и неплохие курсы.
Как практику рекомендую просто делать веб-сайты: придумать идею, и воплотить ее от начала до конца, объясняя, что не так, почему именно такое решение, а не другое. Это поможет в минимальный срок развить скиллы.

Худший ответ: На Единороге неплохие дайджесты по дизайну и UX выходят почти каждый день
Вопрос: Как сформулировать селектор?

Лучший ответ: https://developer.mozilla.org/ru/docs/Web/CSS/:any
Пока экспериментальная возможность, мало где работает.
Как-то так#id :-webkit-any(input, button, fieldset) { ... }
#id :-moz-any(input, button, fieldset) { ... }
#id :matches(input, button, fieldset) { ... }
#id :is(input, button, fieldset) { ... }

Худший ответ: На чистом CSS — нельзя.
Можно через препроцессоры.