Сообщения

Сообщения за 2016

Подключение SVG-спрайта

Способ предлагает Osvaldas Valutis 1. Копируем код; ;( function ( window, document ) {      'use strict' ;        var file     = 'img/sprite.svg' ,          revision = 1;        if ( !document.createElementNS || !document.createElementNS( ' http://www.w3.org/2000/svg ' , 'svg' ).createSVGRect )          return true ;        var isLocalStorage = 'localStorage' in window && window[ 'localStorage' ] !== null ,          request,          data,          insertIT = function ()          {              document.body.insertAdjacentHTML( 'afterbegin' , data );          },          insert = function ()          {              if ( document.body ) insertIT();              else document.addEventListener( 'DOMContentLoaded' , insertIT );          };        if ( isLocalStorage && localStorage.getItem( 'inlineSVGrev' ) == revision )      {          d

Организация памяти

Изображение
 Адресное пространство 32-битного процессора состоит из 2^32 ячеек памяти  пронумерованных от 0 и до 2^32-1  Код int = 10; компьютер поймет так: нужно взять какую-то ячейку с номером стопицот и поместить в нее целое число 10.   Архитектура х86 поддерживает стек. Стек это непрерывная область оперативной памяти организованная по принципу стопки тарелок, вы не можете брать тарелки из середины стопки, можете только брать верхнюю и класть тарелку вы тоже можете только на верх стопки.  Стек в памяти растет сверху вниз, это значит что при добавлении значения в него адрес вершины стека уменьшается, а когда вы извлекаете из него, то адрес вершины стека увеличивается. Организация памяти

Устройство стековых и регистровых процессоров

Любая программа выполняется процессором, теми физическими ресурсами, которые он может предоставить. У процессора нет типов данных, типов переменных, нет сложных циклов. Есть только if (условие: если - то) и jmp (от jump - прыжок, перемещение по коду). Язык Си -- это самый простой "ассемблер высокого уровня" - уже есть структурные операторы, абстрактные типы данных, указатели, зачаточные модули и т.п.      Сноска:     Операторы в Си Но есть и проблемы. Указатели, например, ведут к небезопасному коду, нет некоторых желаемых возможностей и т.д. Решением является создание виртуальной машины, виртуального ЦПУ, вместо реального физического ЦПУ. В виртуальном ЦПУ убраны все опасные операции и он лучше переносится на другую среду. Виртуальные машины делятся на стековые и регистровые. Стековая машины работает с данными на верхушке стека. То есть, код получается проще, компилятор писать проще и т.д. Но при этом получается дополнительный уровень косвенности, вместо работы с imm

Операторы языка Си

Составной оператор –  {...} Действие составного оператора состоит в последовательном выполнении содержащихся в нем операторов; Условный оператор   if (<выражение>) <оператор 1> [else <оператор 2>]; Оператор-переключатель   switch (<выражение>)     { case <константное выражение 1>: <операторы 1>       case <константное выражение 2>: <операторы 2>        ...       default: <операторы>]       } Оператор-переключатель предназначен для выбора одного из нескольких альтернативных путей выполнения программы. Выход из оператора-переключателя осуществляется оператором break. Оператор цикла с предусловием   while (<выражение>) <оператор>; Оператор цикла с постусловием   do <оператор> while <выражение>; Оператор пошагового цикла   for ([<начальное выражение>];          [<условное  выражение>];          [<выражение приращения>])       <оператор> Тело оператора for выполняетс

Что такое стек и куча

Изображение
 Когда компьютеры были большими, а программы маленькими, память компьютера (все 16Кб) выглядела так: Четверть памяти (4кБ) использовала операционная система для работы с оборудованием, для копирования данных, работы с устройствами ввода-вывода; остальное отводилось под пользовательские задачи. Компьютер был однозадачным - одновременно мог выполнять только одну задачу. Память многозадачного компьютера выглядит так: Часть памяти отводится на задачу А, часть на задачу В. Задачи А и В хранятся в памяти. Но что будет, если программа В вторгнется в пределы памяти программы А, или перезапишет область памяти операционной системы? Как помешать ей это сделать? Ведь задач может быть не две и не три, а несколько. И количество задач в разное время может быть разным. Чтобы компьютер мог одновременно выполнять несколько задач, используется адресное пространство имеющее вид «код-стек-куча» (code-stack-heap) Здесь код - скомпилированный код программы из нулей и единиц, стек (stack) - о

Этапы загрузки компьютера

Изображение
Давным-давно загрузка компьютера начиналась с установки и считывания перфоленты. Сейчас перфоленты ушли в прошлое, но проблема осталась. Заключается оно в том, что компьютер может выполнять только программы, находящиеся в оперативной памяти, а операционная система установлена на жестком диске. Решением проблемы является постоянная память ПЗУ или ROM установленная на материнской плате и записанная в ней программа BIOS, которая запускает установку операционной системы. ПЗУ не очищается при перезагрузке компьютера, а программа BIOS в ней записывается только один раз - на заводе изготовителе. Можно и перепрошить (перезаписать) BIOS, но если в процессе перезаписи отключится электричество, включить компьютер уже не удастся. Этапы загрузки компьютера

Стилизуем svg

 О том, как создать svg-спрайт шла речь в предыдушей теме . Но когда понадобится стилизовать иконку, может появиться проблема: размеры иконки меняются без проблем, а цвет - нет. Цвет иконки определяет свойство  fill : #ffb600 ; . icon { width : 15px ; height : 16px ; fill : #ffb600 ; }   Если иконка имеет свой собственный цвет (например, экспортирована из графического редактора), он имеет приоритет перед цветом, задаваемым в css. Решение будет следующим: 1. Применить svg patch svg path { fill : inherit ; }      2. Стилизовать не svg а use <svg>     <use class="icon" xlink:href="#icon-icon-feature-2"> </svg> use.icon {       width: 3em;       height: 3em;       fill: red; } Демо Источник  

Svg спрайты онлайн

Изображение
Проходим по ссылке: https://icomoon.io/app/#/select Нажимаем вверху кнопку "Import icons" Выбираем svg-иконки у себя на компьютере. Затем кликаем по каждой загруженной иконке - она выделяется, вокруг неё появляется желтая рамочка. Внизу нажимаем на кнопку "Generate svg" а затем "Download" Скачивается архив. Файл symbol-defs.svg этого архива является спрайтом с иконками. Добавляем содержимое этого файла в html-разметку, и затем обращаемся к иконкам используя код <svg>     <use xlink:href="#icon-feature-1"> </svg> Демо Источник

Смена цвета у svg иконки при наведении

html <img width = 200 src = "https://upload.wikimedia.org/wikipedia/commons/0/02/SVG_logo.svg" >   css    img:not(:hover) { transition: 2s; filter: saturate(0%); -webkit-filter: saturate(0%); } img:hover { transition: 1s; } Демо Источник

Как изменить разрешение при котором сворачивается меню бутстрапа

Изображение
Стиль, который позволяет свернуть меню при 992px  

Как изменить цвет фона сайта по клику

Изображение
Для изменения цвета фона и фонового изображения сайта js не нужен, достаточно использовать возможности css3 Кликабельно: