Задать вопрос
Ответы пользователя по тегу HTML
  • Как организовать самообучение языкам программирования?

    Stac
    @Stac
    Сайт это прежде всего информация. Примем это. Сайт, где главное не информация, а какой-то сервис, назовем веб-приложением и не будем рассматривать в рамках этой заметки.

    Что у вас будет - не ясно. Но HTML понадобится точно.

    Представляем информацию с помощью HTML. CSS понадобится для внешнего видимого (как правило) оформления.

    Это главное.

    HTML для каждой страницы можно вручную подготовить (написать, сверстать), а можно программно. Так делают (и для этого служат) генераторы статических сайтов или CMS.

    И те и другие берут данные из источника (файлы, базы данных, сторонние HTTP-сервисы,...), берут шаблоны страниц и наполняют их данными (это называется рендеринг). На выходе получается готовая веб-страница.

    Отличие в том, что генератор статических сайтов, как правило, работает на на компьютере разработчика. А получившиеся в результат страницы - набор файлов - разработчик загружает на вебсерер.

    CMS же генерирует страницу в момент запроса и сразу отдает результат в браузер, иногда даже не сохраняя нигде (необходимость сохранения появляется при возрастании нагрузки или повышении требований к производительности и тогда оно называется кешированием). А потому CMS работает непосредственно на вебсервере.

    Самое интересное, что генератор сайта или CMS может быть написана на почти любом языке программирования.

    Если вы не знаете никакого, то начать можно с любого.

    Поймите то, где будет работать ваша программа (генератор сайта, CMS,...).

    Варианты такие:
    1) ваш личный компьютер: программа сгенерирует все файлы сайты и вы их загрузите на сервер, в т.ч. самый дешевый виртуальный хостинг.
    2) виртуальный хостинг под управлением Unix-совместимой операционной системы: программа будет работать под управлением вебсервра (Apache, nginx) где-то на компьютерах провайдера
    3) виртуальный хостинг под управлением операционной системы Windows Server: программа будет работать под управлением вебсервра (IIS) где-то на компьютерах провайдера
    4) виртуальный или выделенный сервер: вы сами выберите операционную систему и веб-север, но компьютер остается под контролем провайдера.

    Выбор варианта повлияет на многое. На ваши затраты, на ваши возможности по настройке и использованию разного программного обеспечения.

    В варианте 1 все в ваших руках, вы можете использовать любой язык, который только сможете заставить работать под своей операционной системой.

    Вариант 2 накладывает ограничения: как правило любой провайдер виртуального хостинга предложит вам (даст возможность использовать) PHP и Perl. Редкий хостер (но его можно найти) предложит python или ruby.

    Вариант 3 имеет свои особенности. Почти всегда вы также сможете использовать PHP, но появляется возможность использовать технологии Microsoft и их языки VB.net, C# и другие.

    Вариант 4 снова возвращает нас к полной свободе - можно использовать все, что угодно. Но требует от нас и большей квалификации и ответственности - сервер полностью придется настраивать самостоятельно или нанимать сисадмина.

    Вы можете выбрать любой язык, но ваш выбор может привести вас к варианту 4, если не найдете хостинг с выбранным языком. Это потребует от вас более долгого обучения и откладывания своего проекта.

    Когда я шел этим путем лет 8 назад, я уже умел программировать на разных не особо популярных языках.

    И первые сайты мои были сгенерированы моими, а позднее сторонними программами-генераторами и представляли собой пачку HTML файлов.

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

    Поэтому пришлось изучить PHP. Позднее к нему добавился базовый JavaScript, т.к. страницы сайтов становились все более и более интерактивными.

    Почти для всех задачах мне достаточно тех языков, что я знаю. Постепенно я улучшаю свои навыки, углубляю знания.

    Да, вокруг много всего интересного и появляется это постоянно. Около 30 вкладок в моем браузере открыто сейчас. Это то, что мне было бы интересно изучить.

    Важно понимать, что процесс познания нового идет параллельно с работой. Далеко не все, что я могу интересного нового узнать я смогу применить в работе.

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

    Поэтому, открывайте новые вкладки, добавляйте в закладки, смотрите видеоуроки и читайте книги, но не надейтесь все это применить на практике. Но это будет вас развивать.

    А еще хорошо найти какого-то наставника, который будет хотя бы давать направления и ставить ограничения.

    У меня таким был начальник на той работе, где я выучил PHP. Я работал в тех условиях, которые были мне даны, что сильно повлияло на путь моего развития, как разработчика. Он далек от общепринятого. Со своими плюсами и минусами. Но главное, что теперь, уже семь лет, у меня нет других начальников, кроме себя :)
    Ответ написан
  • Как в src обратиться к json элементу содержащий собаку?

    Stac
    @Stac
    Уберите собаку.
    Ничто не мешает вам на стороне PHP сделать JSON нужного вида, например:
    [
    "site.ru/default/common/misc/file/car_photo/1615/XW...",
    "site.ru/default/common/misc/file/car_photo/1615/XW...",
    "site.ru/default/common/misc/file/car_photo/1615/XW...",
    "site.ru/default/common/misc/file/car_photo/1615/XW..."
    ]

    и обращаться к элементам получившегося массива по индексу.
    Ответ написан
    Комментировать
  • Как исполнить такую диаграмму на Html и CSS?

    Stac
    @Stac
    Используйте карту изображений (imagemap). Это html теги map, area, img.
    Если вид стандартной подсказки (средствами браузера) недостаточно, то гуглите как делать tooltips на css.
    Ответ написан
    Комментировать
  • Как приспособить пагинацию?

    Stac
    @Stac
    О, я воздержусь от примеров кода, чтобы у вас не было соблазна их использовать.

    Вам нужно разделить код получения данных из БД и код вывода HTML в браузер.

    Дальше можете действовать по алгоритму:
    1) Сделать запрос "SELECT max(id), count(*) FROM `products`".
    Количество нужно для определения числа страниц.
    А max(id) может быть и не понадобится. Так как вывод отсортирован по убыванию (от новых к старым), а новые изображения могут добавляться в галерею, можно запоминать id первого изображения на первой странице.
    2) Получить из $_GET номер нужной страницы (используйте функцию filter_input()).
    3) Получить количество изображений на странице из конфига или тоже из $_GET, если вы хотите, чтобы пользователь мог управлять этим параметром.
    4) Сделать запрос с БД 'SELECT id, name, description, price, image FROM products WHERE id <= $max_id ORDER BY id DESC LIMIT $limit OFFSET $offset';

    где, $max_id это id самой новой записи в текущей сессии, $limit - количество картинок на странице, $offset = $limit * ($p-1), где $p - номер страницы (нумерация страниц с 1).

    Используйте подготовленные запросы, как у вас в примере.

    $stmt = $DB_con->prepare('SELECT id, name, description, price, image FROM products WHERE id <= ? 
            ORDER BY id DESC LIMIT ? OFFSET ?');
     $stmt->execute(array($max_id, $limit, $offset));


    5) Выбрать из БД нужные данные и передать в код отвечающий за представление.

    В представлении (коде, генерирующем HTML) нужно не только вывести картинки текущей страницы, но и сформировать ссылки на другие страницы.

    Количество страниц = количество записей в БД / $limit.

    Сложность возникнет лишь, если у вас количество страниц так велико, что ссылки на них не помещаются на экран по ширине. Тогда нужно будет придумать алгоритм, по которому какие-то ссылки показывать, а какие-то нет.
    Ответ написан
    Комментировать
  • Как вычистить css - неиспользуемые классы?

    Stac
    @Stac
    Расширение для Chrome: CSS remove and combine создает новый css удаляя неиспользуемые правила.
    Ответ написан
    2 комментария
  • Как обернуть выделенный текст textarea в теги при нажатии на CTRL+B?

    Stac
    @Stac
    Если предусмотрен wysiwyg редактирование текста, то
    это можно сделать путем скрытия textarea, появлением на его месте div тех же размеров с установленным атрибутом conteneditable. Пользователь вводит текст, поддержка CTRL-B обеспечивается браузером.
    В конце innerHTML переносится в value textarea. HTML чистится и HTML теги заменяются на bb-code.
    Иначе,
    см. ответ от Валерий Селицккий
    Ответ написан
    Комментировать
  • Как отправить HTML письмо не программисту?

    Stac
    @Stac
    Функция mail() в PHP прекрасно* отправляет HTML-письма.
    Надо только добавить заголовок ("content-type: text/html; charset=UTF-8").

    Вот пример вызова: $res = @mail($email, $subject, $message, "FROM:" . $from_email . "\nREPLY-TO:" . $reply_to_email . "\ncontent-type: text/html; charset=UTF-8");

    В $message у вас будет HTML-код письма. Это вариант для бедных - ваш скрипт потребует минимальных изменений.

    Но "большие дядьки" делают по-другому. Они шлют т.е. multipart письмо, где есть и текстовая и HTML-версия. Код лля его отправки написать чуть сложнее (у меня это почти 20 строк).
    Но тут помогут уже написанные классы, чудовищные по своему размеру и неудобству (посравнению с простым вызовом mail()), зато пользующиеся всеобщей любовью.

    * - могут быть проблемы с кодировками (в т.ч. кодировкой subject, т.к. для этого есть отдельный алгоритм кодирования) в отдельных почтовых клиентах, типа Lotus Notes.
    Ответ написан
    Комментировать
  • Связка HTML/CSS + Python?

    Stac
    @Stac
    С PHP будет проще и быстрее найти работу. Но могут потребовать знания фреймворков и прочего, отчего "сразу отворачивает".

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

    PHP очень распространен, а значит ваши приложения можно будет использовать везде. Можно будет зарабатывать на биржах фриланса - там полно всяких практических задач, а у заказчиков обычный виртуальный хостинг (где PHP есть 100%).
    Ответ написан
    Комментировать
  • Есть ли в природе обширная книга по front end разработке?

    Stac
    @Stac
    Enterprise Web Development Building HTML5 Applicat... By Yakov Fain, Victor Rasputnis, Anatole Tartakovsky, Viktor Gamov
    Ответ написан
    Комментировать
  • выделение общего HTML кода для всех страниц

    Stac
    @Stac
    А еще могу посоветовать простую CMS Kandidat.
    Она очень простая, даже примитивная, особенно если не использовать админку. Примитивная в том смысле, что в ней легко разобраться, вникнуть в суть.
    Ответ написан
    Комментировать
  • выделение общего HTML кода для всех страниц

    Stac
    @Stac
    Друзья, для вашего же блага (и развития) используйте вариант 2 из ответа rozhik:
    2. PHP <?php include('header.php'); ?>Code… <?php include('footer.php'); ?>


    Конечно, SSI тоже поможет решить эту задачу, но на хостингах SSI часто имеет ограничения, и это очень старая технология. Когда у вас возникнет следующий вопрос с вашим сайтом, SSI ответ на него уже не даст.

    Раз уж вы не пользуетесь CMS, значит хотите сами все делать ручками, во всем разбираться… PHP — ваш путь (как альтернатива — любой другой серверный язык программирования).
    Ответ написан
    Комментировать
  • Манипуляция с Iframe?

    Stac
    @Stac
    same origin policy можно отключить в Chrome (см. ключ командной строки --disable-web-security)
    Ответ написан
    2 комментария