About rel=noopenerの記事を見て、フィッシング詐欺の手法Tabnabbing(タブナビング)について、 以前にそれっぽい記事読んだけど、すっかり忘れていた。 改めて見直してみて、その内容と対策がまとまっていたのでおさらい。 Tabnabbing(タブナビング)の仕組みTabnabbing の仕組みは以下となる。 まず、新規のタブを開くようなアンカータグ
About rel=noopenerの記事を見て、フィッシング詐欺の手法Tabnabbing(タブナビング)について、 以前にそれっぽい記事読んだけど、すっかり忘れていた。 改めて見直してみて、その内容と対策がまとまっていたのでおさらい。 Tabnabbing(タブナビング)の仕組みTabnabbing の仕組みは以下となる。 まず、新規のタブを開くようなアンカータグ
Real World HTTPでも紹介したネタですが、お仕事で受けている技術コンサル中に質問をいただいた時に、微妙に本で紹介した内容では少し足りなかったので、改めて整理のためにブログ記事にしてみました。次回、本が改訂されることがあればこのブログエントリーの内容も入れて加筆したいと思います。 Real World HTTPだとGoを使っていましたが、フロントとサーバーを同時にいじるので、本エントリーではNext.jsをサンプルに使います。Next.jsでプロジェクトを作って(npx create-next-app@latest –ts)、適当なプロジェクト名を入れてアプリケーションの雛形を作っておいてください。 Next.jsでは、1つのスクリプトファイルを作成すると、それがサーバーAPI(/pages/api以下)と、フロントの画面(/pages/以下のapi以外)になります。Next.j
静的サイトジェネレーターとは? Static Site Generator(SSG) WebサイトのHTMLファイルを生成するツールのこと Wordpressのような従来CMSの仕組みは、MySQLなどのDBをもとに、サーバーでHTMLを生成して返すものだった それに対し静的サイトジェネレーターは、コンパイル時にGraphQLやAPIからすべてのデータを取得し全てのHTMLを最初に生成する さらに、生成されたファイルを、Netlifyなどのホスティングサービスを用いて、サーバーレスで公開する仕組みが主流になっている 静的サイトジェネレーターのメリット ※ Netlifyなどホスティングサービスを用いた場合 レスポンスが速い。サーバーでHTMLを動的に生成しないから サーバー代 ¥0✨ サーバーが必要ないため サーバー落ちない。メンテが不要 ※ ただしホスティングサービスが落ちる可能性はあり
There are several nice libraries of HTML Parsing using Swift and Objective-C like the followings: hpple NDHpple Kanna( old Swift-HTML-Parser) Fuzi SwiftSoup Ji Take a look in the following examples in the four libraries posted above, mainly parsed using XPath 2.0: hpple: let data = NSData(contentsOfFile: path) let doc = TFHpple(htmlData: data) if let elements = doc.searchWithXPathQuery("//a/@href[
<ul>タグ内のリストのマーカーをdiscにしていたのですが、テキストの色と同じだと強すぎて少し薄くしたいという要望がありました。そこで、HTMLマークアップは変更することなく、CSSだけでlist-styleのマーカーの色を変更する方法を紹介します。 標準のリストマーカー 何も手を加えていない状態での<ul>、<li>は下のようになります。 See the Pen Normal list-style by JaSTIN (@JaSTIN) on CodePen.24295 黒く大きなマーカーは主張が強い印象があります。CSSだけでリストマーカーを変更 方法としては、まず<ul>タグのlist-styleを無効にして、<li>タグの:before疑似要素に対して、マーカーを設定しています。See the Pen Change list-style by JaSTIN (@JaSTIN) o
と呪文のように書いてきたが、いい加減ちゃんと整理して理解しよう。 いろいろ調査した結果、以下の考え方で理解できると思う。 まず、実際の液晶の解像度は一旦忘れろ。 <meta name="viewport" content="width=480">と指定したとする。 するとそこに幅480pxの仮想的なウインドウが作られる。幅480pxの液晶モニターがあることをイメージして欲しい。これをviewportと呼ぶ。 ブラウザはviewportにレンダリングする。viewportの中では、あたかも本当に480pxのモニターを使っているかのような環境になっている。なので、JSのdocument.documentElement.clientWidthなんかも480を返すし、media queryの条件判定でも480pxの画面幅が使われる。 次にviewportを実際の液晶画面に表示する。この時、view
2014年でも html を解析してゴニョゴニョするなんて要件はまだまだある訳で、そんな時に便利なのが pup というコマンドです。 EricChiang/pup - GitHub README.md pup pup is a command line tool for processing HTML. It reads from stdin, prints to stdout,... https://github.com/EricChiang/pup 通常、こういったツールは perl や ruby、python 等で提供されランタイムがインストールされていない環境で動かすのはちょっとした手間が発生していました。しかし pup ならば golang で出来ているのでバイナリ1つあれば動かせます。 使い方は、例えばこのサイトのパーマリンクのHTMLを得たいならば curl -s http:
Polymer 1.0最新情報!(後編)ーGoogle I/O Web Appの作り方、Polymer Starter Kitで始めるMaterial Design、etc. 河合良哉 本記事は、「Polymer 1.0最新情報」の後編になります(前編はこちらから)。Google I/OでPolymer 1.0が取り上げられた「Polymer and modern web APIs: In production at Google scale」のセッションをレポートします。Polymerの最新情報や活用事例、Polymer Catalog、Polymer Starter Kitなど、盛りだくさんのこのセッションの翻訳と解説を前後編に分けてお伝えします。 後編となる本記事では、「ライブサイトへの適用例(後半)」、「Polymer Starter Kitとは」を解説します。 ライブサイトへの適
Polymer 1.0最新情報!(前編)ーPolymer 1.0とPolymer Catalog、活用事例の徹底解説 河合良哉 Polymerは、Google I/O 2015にて1.0が正式リリースとしてアナウンスされました。本記事は、Google I/OでPolymerが取り上げられた「Polymer and modern web APIs: In production at Google scale」のセッションをレポートします。Polymerの最新情報や活用事例、Polymer Catalog、Polymer Starter Kitなど 盛りだくさんのこのセッションの翻訳と解説を前後編に分けてお伝えします。 前編となる本記事では、「Polymer1.0の特徴」、「Polymer Catalogとすぐに使えるElements」、「ライブサイトへの適用例(前半)」を解説します。 Pol
The Go language comes with a powerful built-in template engine. In this article I show how to add custom template functions (functions you can call from within a template). In an earlier post I showed one way of creating a web application in Go. There I added support for templates. At its most basic, adding a bundle of templates looks like this: import ( "os" "html/template" ) func main() { // Cre
Using html/templates in Go can you do the following: <table class="table table-striped table-hover" id="todolist"> {{$i:=1}} {{range .}} <tr> <td><a href="id/{{.Id}}">{{$i}}</a></td> <td>{{.Title}}</td> <td>{{.Description}}</td> </tr> {{$i++}} {{end}} </table> every time I add the $i variable the app crashes.
この記事は Go Advent Calendar 2013 の 18 日目の投稿です。 はじめに今年もいろいろと行われていますAdvent Calendarですが、初めて参加させて頂きます。プログラミング界隈のプロフェッショナルな方々の中で書くというのは、ただ1人で家で書いてるだけなのに、ちょっと緊張しちゃってます(^^ゞ 簡単にGo歴を。2012年1月に勉強会に参加してから、シンプルで守備範囲が広そうで強力で、なにより楽しいと感じ、それから自分で勉強したりして発表させて頂いたりしました(slideshare)。神戸からGoCon Springに参加したり、神戸から名古屋の勉強会に参加したりしました。 そんな中、今年の10月に、マッチングサイトを作ってほしいという話があり、言語は何でもいいとのことだったので、担当者に”Goはキマスよ”と訴え続け、Goで作らせて頂きました。 そこで、よく「G
Stack Overflow for Teams is now called Stack Internal. Bring the best of human thought and AI automation together at your work. Try for free Learn more
元ネタ あるプログラミング言語で実際にWebAppを開発できるようになるまで、何が必要だろうか。言語仕様の習得は終えているとしよう。おそらく、最低限以下のような知識が必要だと思われる。とりあえずGo言語について知っていることを書いた。 パッケージマネージャ 標準でついてるgoツールを使おう。必要なライブラリはリポジトリから、go getで取ってこよう。 http://golang.org/cmd/go/#hdr-Download_and_install_packages_and_dependencies アプリケーションサーバ 標準パッケージのnet/httpパッケージを使えばhttpサーバを動かすことができる。apacheやnginxで動かしたかったら、標準パッケージのnet/http/cgiパッケージやnet/http/fcgiパッケージを使えばいい。 http://golang.or
The Polymer library is in maintenance mode. For new development, we recommend Lit. The Polymer library provides a set of features for creating custom elements. These features are designed to make it easier and faster to make custom elements that work like standard DOM elements. Similar to standard DOM elements, Polymer elements can be: Instantiated using a constructor or document.createElement. Co
Heads-up: Dashing still works great, but is no longer maintained. Read up about it over here. You can also use the fork of the project. Dashing is a Sinatra based framework that lets you build beautiful dashboards. Check out a demo over here. Here's another one, optimized for 1080p screens. Key features: Use premade widgets, or fully create your own with scss, html, and coffeescript. Widgets harne
ただの、自己満足乱れ書き ふむ、下々の文章でも見てやるかって人だけ見てくれればおk 対象はvimはじめたいという人から中級者ぐらい vimでhtmlファイルを編集するときに知ってると気持ち良くなれるコマンド というか最低限覚えておかないと、コーディング時間が3倍以上になる系のコマンド。 アクション範囲ターゲットの3つの組み合わせコマンド 例)citとタイプ citのcはアクション。cの場合は削除して挿入モードに変更。他のアクションに置き換える事も可。d(削除)v(選択)など。 citのiは範囲。iはタグの中身が範囲でaに置き換えるとタグ全体が範囲になる。上記の場合でaにすると<div></div>ごと消えて挿入モードになる。 citのtはターゲット。tの場合はタグに対して行う。他にも'や"、<>、{}、()と言ったような何かで挟むものに使える。<>のような左右で違う記号はどちらか一方で良い
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く