2011 2011年 7 7

CSSハックの質問

いくつかのブログでこれを読んでいた...それは将来の参照のためにこれをカタログ化するために良いと思った.... またいつか尋ねたという重要な面接の質問かもしれません....

IE7でIE6と黒の緑、新しいブラウザでは、赤、古いブラウザでは青色の段落が表示されます。CSSのスニペットを書き込む

#content p{color:blue}
html>body #content p {color:red}
* html #content p{color:green}
html>body #content p {*color:black;}


2010 2010年 5月 20

再サイクリングCSS:CSSのフレームワークルック·アット·

再サイクリングにBuzzwordであり、Web開発では、それは別のことを意味します。 それは努力の面で、エネルギーを節約!

CSSを記述し、デザインからHTMLを作成するための年間で、私は "車輪の再発明"として我々は一般に長期ものに時間とエネルギーを節約するの追求で、いくつかのベストプラクティスに従っています。 時間と時間が再び、私は私の将来の仕事に箱から出して使用することが、私はいくつかのテンプレートを作成する必要があり、いくつかの標準的な再利用可能なCSSを自分に語った。 完全ではないけど、私は目標の一部を達成するために管理しました。

これらはしようとしたテストの結果、自分よりもはるかに経験豊富な開発者によって作成されるので、CSSの再利用を促進で、私は、私たちに一般的に入手可能ないくつかのCSSのフレームワークを見ていたし、それらを使用するようにすることを決めた。 さらに重要なことは "再発明を避ける"。

ベテランに共通する知識が、私はペンにいくつかの重要な概念/ CSSのRE-サイクリングを可能にするために、これらのフレームワークを作成することになっているベストプラクティス/思考をしようとしている。 これはちょうど約であり、最近ではCSSの時流に乗っいくつかのCSSの開発者を助けることを願っています!

CSSのキーは、再循環:

命名規則を使用します。

これは、CSS / HTML再利用可能なを行う際に最も重要な要因である必要があります。 ページ要素に一貫性のある名前を与​​えることはほとんど、あるいは修正を加えたページのコンポーネントとそのスタイルの再利用を可能にします。 この引数に沿って、あってもHTML5は、前任者以上に大きな変化の変化では、いくつかの構造的なタグVIZを導入することである。 <article>、<section>の、<HEADER>、<aside>、と<nav> [ HTML5とは何をもたらすのだろうか? ]。 でも、HTML 4(または低い)と、それはcon​​sistanly以下の簡単な例のようにページの標準セクションの名前を指定するのが最適です...

、あなたのプロジェクトのほとんどのページを覚えて、同じコア構造要素を有する終わる。 これらの共通のコアのページ要素を識別する....

  <div id="container">
    <div id="header"> ... </ DIV>
    <div id="nav"> ... </ DIV>
    <div id="sidebar"> ... </ DIV>
    <div id="footer"> ... </ DIV>
   </ DIV> 

デフォルトのスタイル(CSSリセット)をリセットします:あなたがフレームワークを使用するか、または独自に作成するかどうかは、CSSのリセットを提供しなければならない[ CSSリセットは何ですか? ]、それらが軽減または、時には様々なブラウザ間で発生する視覚的な不整合をなくすように。 簡単な言葉でCSSのリセット機構は、このように、彼らがもたらす可能性があり、任意のブラウザのデフォルト値をオーバーライドして、ゼロまたはNULL値にHTML要素のスタイルを設定します。 これは、任意のUser-Agentのデフォルトのこれらの要素はvoid [のプロパティを設定するには、白紙の状態を提供CSS2.1ユーザーエージェントのスタイルシートのデフォルトを すべてのCSSフレームワークは、リセットメカニズムの必要もありません。 あなたが自分のCSSをリセットし記述している場合は、注意の単語は、キープロパティをリセットするのを忘れてしまった場合、それはデバッグが非常に困難であるクロスブラウザの問題につながるかもしれないということです。 、覚えているリセットスタイルのコピーを保持し、作成するそれぞれの新しいプロジェクトにドロップします。

 ボディ、DIV、DL、DT、DD、UL、OL、LI、
  H1、H2、H3、H4、H5、H6、
 事前に、フォーム、フィールドの入力、選択し、テキストエリア、
  P、BLOCKQUOTE、テーブル、TH、TD
  {
   国境:0px;
   マージン:0;
   パディング:0;
  } 

要素への設定のデフォルト(ベースラインスタイル):

あなたは(ゼロまたはnullに)特定のHTML要素の特定の属性のデフォルト値を設定した後、それはこれらの要素のすべてのインスタンス間でいくつかのスタイルを適用する必要があります。 これらのデフォルト設定では、デザインごと、またはあなたが従うベストプラクティスによると異なる可能性があります。

ほとんどのCSSフレームワークは、常にデフォルトのブラウザのスタイルをリセットすることに加えて、いくつかの新しいデフォルト値を導入しています。
これらのデフォルト値は、User-Agentのデフォルト設定(CSSリセットによって取り除か)の空隙である、これらは、ブラウザ間で一貫性があります。

覚えておいて、ベースラインのスタイルは、デザイン全体で使用することが予定されているスタイルを設定するために使用されています。 例えば、。

  htmlの{フォントサイズ:77%;フォントファミリー:MS Pゴシック、サンセリフ;}
強い、H1、H2、H3、H4、H5、H6 {フォントウェイト:大胆な; 

共通のHTMLコンポーネントと一般的なクラスの抽象的なスタイル:

そのようなコンポーネントはプロジェクト間で繰り返し使用されているので、複数ページから成るほとんどのプロジェクトは、フォーム、アラートおよびエラーは、カスタムポップアップ、ライトなどの、例えばある種のサイト全体で使用される一般的なHTML要素を持つようになり、それは提供するために有用であろうこれらのコンポーネントの定義済みのスタイルに関連付けられたクラスのセットとあなた自身に多くの時間を節約することができます。

離れて一般的なHTMLコンポーネントの再利用可能なスタイル定義を定義することから、我々は抽象的なスタイルのクラスは、タイポグラフィ、カラー、あるいはレイアウトに関連する可能性があります。 私自身は、使用する傾向がある... Clearfix、Font08、FontGrey、AlignL、DisplayBなどのような一般的なクラスを

 フォームの入力{国境:0px;背景:#000000;パディング:0px 10pxの; _padding:のでしました。高さ:26px;色:#000000;行の高さ:30pxの、フォントサイズ:1.1em;}
フォームのtextarea {国境:0px;背景:#000000;色:#000000;フォントサイズ:0.9 EM、行の高さ:1.5em;オーバーフロー:目に見える;}
 。fbold {フォントの太さ:太字、カラー:#CCCCCC;}
 。fgrey {色:#666666;}
 。flightgrey {色:#BBBBBB;}
 {クリア:両方;} clearfix
 。分圧器{国境トップ:1px固体#647B06、ボーダー底:#9CC00A 1px固体;高さ:0px;}
 。displayb {表示:ブロック;} displayn {表示:なし;}
 。alignr {テキストが整列:右} alignc {テキストが整列:センター}
 。floatr {フロート:右;} floatl {フロート:左;} 

一般的なブラウザの癖の修正

さまざまなブラウザは、CSSのコードを実装し、CSSの仕様のサポートの様々なレベルを提供しています。 この結果、.... 我々の開発者が取り組むために残されている "ブラウザの癖"。 特に、IE6は満たすために締め切りで最もCSSコーダーを見物。 良いニュースは、これらの問題(多くの場合、と呼ぶに一緒に可能な限り再利用可能な修正を経験をもたらしているされているCSSハック )。

覚えている、これらのハック/修正は手元に置いておいてください

  / *次のズーム1ルールはIE6 + IE7専用です。  * /
    * HTML。clearfix、
    *:第一子+ HTML clearfix {
          ズーム:1;
      } 

あなたのCSSの調整に保つ

  • 再循環の習慣は一日にあなたに来ることはありません。 それを開発する必要があります。 だからあなたの再サイクリングを計画しています。 あなたは抽象的なデフォルトのスタイル、タイポグラフィの定義、レイアウト、HTML要素のスタイルなどが先に考えてみることは、このことを念頭においてください。
  • また、あなたの過去のプロジェクトを振り返って、それはあなたがporjectsにわたって頻繁に使用する傾向があるスタイルを識別するのに役立ちます。 それは抽象的。
  • 任意の未使用のスタイルを削除します。 この練習は "加熱発泡"と呼ばれる一般的な症状からあなたのCSSのフレームワークを維持します -
  • 反復的なスタイルを削除します。
  • プロジェクトを横断して移植するのに十分柔軟であるスタイルのセットを構築します。

CSSフレームワークルック·アット·

最後に。 あなたがインスピレーションとCSSのフレームワークのいずれかまたは複数を使用する予定されている場合は、HERESには、いくつかの一般的なものの簡単なリストです。....

  • 960グリッドシステム :960グリッドシステムは、960ピクセルの幅に基づいて、一般的に使用されるディメンションを提供することにより、Web開発のワークフローを合理化するための努力です。 個別に、またはタンデムで使用することができる12、16、24列:3つのバリアントがあります。 あなたは簡単に十分なあなた自身のための1つを作成することはできません何も考えず、フレームワークは、PDF形式で印刷するためのグリッドテンプレートを提供するものがあなたのページdesigns.Betをスケッチするために使用できる、あなたがたときにいくつかのシートを運ぶ場合、それは、プロフェッショナルな印象になるだろうあなたは、UI要件の収集のためにクライアントに移動します。 それはまたあなたの設計作業を開始する "10のためのスターター"を提供花火、フラッシュ、InDesignでは、イラストレーター、フォトショップ、Visioのような人気のデザイン·ソフトウェアの基本的なグリッドのテンプレートなどを提供しています。
  • 青写真 :青写真がはっきりと分類されたCSSリセット用のファイル、グリッド、フォーム、印刷、タイポグラフィ、用のプラグインボタン、タブ、スプライトなどまた含まれる独立したとして、IEのサポートを提供しています。
  • SenCSs :上記の2つとは異なり、SenCSs(発音センス)は、レイアウト用のCSSの定義を持っていません。 これは、フォント、パディング、マージン、表、リスト、ヘッダー、ブロック引用blockquote、フォームなどが含まれていません。
  • BlueTrip :名声へのオリジナルの主張は、それはブループリント、 旅行 OLIのような他の他のフレームワーク...それは、その名前を取得し、そこからが提供する最高の機能を組み合わせたということでした。 その機能セットは、24列のグリッド、タイポグラフィスタイル、ORMスタイル、印刷、ボタンなどが含まれます。
  • YUIグリッド :Yahoooデベロッパーネットワークによってあなたに持って来られては、750px、950px、974pxとで流体幅(100%)のレイアウトと同様にプリセット固定幅のレイアウトをサポートしており、容易に任意の数に合わせてカスタマイズする能力。 あなたが見ることができるように、その技術的にだけレイアウトコンポーネント。 YUIは、他のページ要素のHTML / CSSのセットを提供
  • YAML(もう一つのマルチカラムレイアウト)
  • Emastic

覚えておいて、CSSのフレームワークを使用すると、あなた自身のいずれかを作成するには怠惰であることを意味するものではありません...それはあなたが他の経験と失敗から学ぶことがスマートであることを意味し、TIME、および生産性の向上を救え!!


2010 2010年3 13日

@ fontface:お好みのフォントでそれを表現する、ウェブフォントを使用する

CSSは、今年10歳の存在を完了! CSSを使用してパンを(またはしない)収入、しばらくの間、回避されている人、あなたは私たちがフォントの良い選択のために飢えてされたか知ってかもしれません。 さらにフォントの欠如とでているようなデザイナーはCSS禅の庭は彼らの設計にいくつかの正義を行うための追求にフォントを置き換えるためにCSSの背景画像を利用してきました。 我々はまた、Flash / JavaScriptの®ハック私たちの設計目標を達成しようとしています。 決してこれは我々が我々のWebデザインに希望のフォントを取得するために間違った方法ですが、間違いなく、それが最も望ましい方法ではありません。 長年にわたってWebデザイナーは、私のように、完全に彼らの設計のための10かそこらのフォントに頼ってきた。

Web標準とフォントフォーマットの最近の進展は、同じ古いデフォルトフォント以外の書体でHTMLテキストをレンダリングすることが可能になります。 "@ fontface" CSSのdeclerationにしています。

@ FontFaceは実際のフォントファイルにリンクし、Webから取得するためのソリューションをprovids。 @ FontFaceを使用して、設計者は背景画像としてテキストを凍結することなく、フォントを使用することができます。 以下に示すように、実装は、非常にまっすぐ進むですが、すべての良いものがそれにCONの部分を持っているとして、すべてのブラウザでは、単一の" フォントタイプ " サポートしています。 あなたは、クロスブラウザのサポートを必要とすると、サイト内の@ FontFaceを使用することを計画している場合、あなたは同じの様々なフォントの種類のソースを提供する必要があります。

  1. TrueTypeフォント -画面上の見栄えするように設計形式。 Windowsのブラウザ(クローム)には特にお勧めします。
  2. OpenTypeフォント(CFF) -この形式は、印刷作業のために良いですし、常にWindows上で良く見えません。
  3. EOT -あなたは、Internet Explorerをターゲットにしたい場合にこの形式を必要としています。 IEは他のフォーマットを使用することはありません。 彼らはどちらも圧縮しないでも、ドメイン制限されているので、私たちのEOTのは、 "ライト"とみなされます。
  4. SVG -これはiPhoneを含むいくつかのブラウザでサポートされているXMLフォーマットです。
  5. WOFF -これは、クロスブラウザは、Webのみのフォントの書式(フォントデータはZIP圧縮されます)軽量で、TrueTypeまたはPostScript(CFF)の概説のいずれかでコンパイルすることができます。 これは、現在のFirefox 3.6でサポートされています+。

@ FontFaceを使用して、

 の@ font-face {
フォントファミリー: 'CalligraphyFLFRegular';
 SRC:URL( 'CalligraphyFLF.eot');
 SRC:ローカル( 'CalligraphyFLF')、ローカル( 'CalligraphyFLF')は、url( 'CalligraphyFLF.woff')フォーマット( 'WOFF')は、url( 'CalligraphyFLF.ttf')フォーマット( 'TrueTypeフォント')は、url( 'CalligraphyFLF 。SVG#CalligraphyFLF ')フォーマット(の' svg ');
 }
の@ font-face {
  フォントファミリ: "あなたの書体";
   SRC:URL( "フォント/ font_filename.eot");
   SRC:ローカル( "代替名")、ローカル( "Alternatename")、
     URL( "フォント/ font_filename.woff")フォーマット( "WOFF")、
     URL( "フォント/ font_filename.otf")フォーマット( "OpenTypeフォント")、
     URL( "フォント/ font_filename.svg#font_filename")フォーマット( "SVG");
   }
 H2 {フォントファミリー: "あなたの書体"、グルジア、セリフ;} 

あなたが選択したフォントの書体を含めるには、上記の例からわかるように、人は同じ書体のfonttypesのセットにリンクする必要があります。 したがって、人々は、 "フォントキット"としてそれを参照してください。
明示的にエンドユーザーライセンス契約(EULA)の下でそれにCSSの@ font-faceプロパティでリンクできます。利用可能なフォントキットがあります。

便利なWebFontリソース:

  • @ font-faceの埋め込 ​​みできるフォントでwikiページhttp://webfonts.info/wiki/index.php?title=Main_Page
  • レイLarabie 彼はウェブ上で使用するために自由に利用できる興味深いTrueTypeフォントの数百を行った有名なフォントデザイナーです。 彼のフォントは、優雅な装飾、遊び心があります。
  • ディーターSteffmannは別の偉大なフォントデザイナーです。 彼は、あまりにも、使用する人のための多くの美しいフォントが利用可能になりました。
  • フォントショップは :ウェブの使用のために特別に設計されたフォントを提供しています。 最も成功したFontFontの家族の30以上は現在のWeb FontFontsとしてご利用いただけます。 FontShopはまた、詳細なWebFontのユーザーガイドがありますhttp://www.fontshop.com/blog/newsletters/pdf/webfontfontuserguide.pdfを
  • フォントリスは :フォントリスはの@ font-face CSSの埋め込 ​​みで使用するために提供しているすべてのフォントを紹介しています。 フォントリスは、型の印象的な量を提供する1つを選択するのは簡単それは死んだになり、手近に "キット"を提供 - お好みの書体、いくつかの形式で、デモのHTML&CSSに同梱非常に現在の@ font-face構文を使用します。 。 彼らはまた、方法を提供独自の@ font-faceキットを作るの 使用する書体(お使いのコンピュータに付属しているものが必ずしも良いものではありません)適切にライセンスされている場合は、ジェネレータは、EOT、SVGを生成し、ちょっと! WOFFファイル。

2009 2009年 11月 7

CSS ZOOM -もう一つのIEの癖、3ピクセルシフト

かんしゃくをスローすることによって、時間と繰り返した時、開発の精神のうち、すべてのW3Cの規則によって言われたとおりに動作するように見て、他のブラウザ、IEスパイラルあなたは、その修正プログラムを持っていないようです。 ちょうどそのような一つは、IE7でこの問題です。

問題文:
私など他の深刻なウェブ開発者の多くは、いくつかのリンク(アンカータグ)の上にカーソルを移動に、レイアウトでフロートがネストする場合、容器が右に数ピクセルシフトしているようだ、何度以上に気付いたかもしれません。 私はこの問題のためのGoogleのソリューションを試してみましたが、ほとんど理由に合理的な答えを見つけなかったし、それが発生したとき(起きてからこの問題を回避するのに役立つかもしれない)、それゆえ私はどちらかの問題に対する明確な解決策を見つけたことがない...

可能な解決策:
経験から、私はこの問題は、誤動作、コンテナのCSS定義にzoomプロパティを追加することによって固定されていること、すなわち時間の通知が90%パーセントを持っている...

 #somediv {
      ズーム:1;
 }

再び理由があいまいである...これを試して...
IEの一部の要素はデフォルトで"true"です"hasLayout"プロパティを持っています。 多くの視覚的なCSSの行動、例えば、アルファフィルタは、hasLayoutその要素上で動作します。 と{ズーム:1}はターゲット要素のhasLayoutプロパティを与えるようで .... 役に立つか? 私はそう思ういけない...

zoomプロパティはまた、クロームでサポートされているように思われますが、その使用DINTは、私のレイアウトに非常に悪影響を及ぼすように見える...それはあなたのために働く場合は、それを試して...それがない場合は、 "CSSのクラップス"の下にこのページをブックマーク


2009 2009年 7月 28

CSS2.1ユーザーエージェントのスタイルシートのデフォルト

昨日、私はGoogle ChromeのCSSをリセットで発生した問題の後に...私はユーザーエージェントのスタイルシートの領域に深いビットを掘ると考え...
CSS2.1 ...ユーザーエージェントのスタイルシートのデフォルト値にこのテーブルを見つけました(どのような"ユーザーエージェントのスタイルシート"を知らない人のために従っているユーザーエージェントのスタイルシート(仕様)は何ですか

CSS 2.1ユーザエージェントのスタイルシートのデフォルトの完全なリストについては、ここをクリック


2009 2009年 7月 27

ユーザーエージェントのスタイルシート:GoogleのChromeの謎の余白

昨日、他のすべての "グラウンドホッグデー"のように、私はいくつかのCSS /テーブルレスレイアウトで働いていた。 すべてのIE 7、FF 3、Chromeでうまくいったが、刚性は突然、私はGoogle Chromeで見られるいくつかの非無視マージンを見ました。 非常に奇妙なworringかかわらず、それは私がaccrossに来たことをいくつかの新しいバグ/問題でした、私の平凡な仕​​事のいくつかのスパイスは、最終的にあった。 悲しい(しかし素晴らしい)は、プローブの数分以内に修正されました...

Google Chromeは私のCSSをリセットし(:0pxマージン)は無視のような基本的に、それは見えた。 それは実際にユーザーエージェントのスタイルシート(-webkitの-パディング-スタート:40px)によって引き起こされた。 0ふらちな要素:だから解決策は、パディングを設定することにより、このスタイルをリセットすることであった。
任意の要素に起きてからこの問題を回避する良い方法は、次のようにグローバルなCSSレストを使用することです

* {マージン:0;パディング:0;}

ユーザーエージェントのスタイルシート(仕様)とは何ですか?
次の抜粋は、から取られhttp://meiert.com/en/blog/20070922/user-agent-style-sheets/ 、ユーザーエージェントのスタイルシートの詳細を読むためにリンクをたどる

しかしおそらく平凡な - - 方法CSS 1は、各ユーザーエージェント(UA、しばしば "Webブラウザ"または "Webクライアントは ')合理的にドキュメントを提示するデフォルトのスタイルシートを持っていることを示すことによってアイデアを紹介しています。 CSS 2は、適合するユーザエージェントは、デフォルトのスタイルシートを適用する必要があります(または、彼らがしたかのように動作)とユーザエージェントのデフォルトスタイルシート言語の一般的なプレゼンテーションの期待を満たす方法で、文書言語の要素を提示しなければならないという。CSS 3は、同じ心である可能性があります。

CSSの仕様は、デフォルトの表示かどうかについては、 "本物の"スタイルシートを使用するかどうかを実装に任せているので、それはあなたがすべてのブラウザのインス​​トールフォルダのデフォルトのスタイルシートが見つからないという驚くべきではありません。 Microsoft社のInternet Explorerとは異なり、同様に例えばオペラ(と私が知る限り)、FirefoxやNetscape NavigatorなどのGeckoブラウザ( "html.css"の外観)だけでなく、Konquerorは、デフォルトのスタイルを理解することがなく、簡単に行えます。


2009 2009年2 18

CSSを使用した、画像へのドロップシャドウを追加する

別のクイックちぇ。 ここでCSSの電源を使用してシンプルで素敵な何かがある...しかし、始まることは困難concieve(それはきっと私ではありませんでした)であった。 ドロップシャドウを追加すると、PhotoshopのANF花火などのような編集ツールをいくつかの画像を使用して、私たちの多くのためにケーキのピースはあるかもしれ
私はCSSを使ってドロップシャドウを選んだ理由は、通常、アプリケーションのページデザイン/ HTMLを作成するときに、要件が反復しておく、ということです。 私は何を意味することは、多くのイメージを持つ既存のWebサイトでは、のfreindsリストまたはイメージギャラリーの表示であるような、それはそのために、再処理に既に影を追加または削除するには、アンロードされた画像の全体の負荷が困難になり、ある問題。
これらの余分部門または追加するには、HTMLテキストの作成中に少し前進思考を行っているそうだとすれば、通常状況では、XSL、PHPでこれらのアイコン/サムネイルを生成ループロジックを持っているということです。 JAVAやその他のプログラミング/スクリプト言語は、いつでも追加することができますし、ちょうどショーやこれまでの要件を変更するクライアントごとに、CSSのdisplayプロパティを使用して、これらの影を隠すことの問題です...私は前方に考え、この種を行ってやりなさいこの前に...しかし、ahevは今始まった!

以下の例では、元のイメージは影は無料ですし、必要に応じてdropshadowsが適用されます! また、私についての私の以前のツタンカーメンのトリックを(Well!これらは、おそらくチュートリアルの最短様々ですので、それが唯一のそれらの"ツタンカーメン"の呼び出しに正当化される)を使用して、少し余分を行っているCSSのClipプロパティを使用して見せびらかすためだけに

オリジナル画像

original_image

CSSのドロップシャドウの結果
css_dropshadow_results
デモ表示 | ダウンロード、ソースファイルを


2009 2009年2 17

CSSのClipプロパティをUnderstandng

なぜ私はこれを理解したいか? ヒュム...!!

CSSの作家のほとんどは、そのCSSのClipプロパティは、おそらくほとんどの未使用のCSSプロパティの一つです同意するだろう。 それはあまりにも私にとっては本当だったので、私は変更を開始するまでは、それを無視するのが最も幸せだったMooToolsのTWOノブ(ピン)Sliderコンポーネントを(範囲インジケータ付き)

スライダの範囲を示すために切り取られbackgroudのイメージ(可変幅の分割に対して)を使用して、Sliderコンポーネントを変更するコンポーネントのいずれかのユーザーから良い提案がありました。 したがって、私の楽しみを入力する時間はなく、CSSのClipプロパティの非チャーター(私のためにofcourseの)水が来ました。

よく! それはどのように困難になることができますか? あまりすべてで... YESとNO。 CSSのClipプロパティを使用する構文はかなり直立であるが、意味は/ usuageビットcroockedです。 私のようなメモリでは、毎回私は、スライダのスクリプトの手直しに座っている...私は自分自身に私のスクリプトで作成したロジックを思い出させるために、このClipプロパティの使用方法に戻ってtokeepを参照している.... それゆえ! それは未来(とも思われる人々の利益のためにCSSのクリッププロパティでboggled)覚えておくべき希望をもって、ペンをダウンすると考え

CSSのクリップは何をしますか?

クリップはCSS 2.1のビジュアルエフェクト·モジュールの一部です。 簡単に言えば、そのジョブは追加のファイル(作成しなくても、それ故に画像をクリッピングしてサムネイルを作成、クリッピングされているオブジェクトの上に表示されるウィンドウを配置することです私はすでに、Sliderコンポーネントの活用には、この機能を入れている :)

CSSのClipプロパティを使用して、四角形の図形を使用してクリッピングを作成することができます。 rectを使用して、多くの他のCSSプロパティ(マージン、パディングなどのように)、同様に必要とする4つの座標上、右、下、左(TRBL)。 あなたはこれらの4つの座標を(しばらくの間、トスに脳を送信)を使用して、クリップのクリッピング領域を計算する方法を詳しく見てみたときに、このプロパティのcroocked性質が反映されています。 今、あなたを混乱させるボトムは、トップから始まり、右は左から始まります。 :) あなたは私が言った?を参照してください。 .... したがって、このポスト...

この小さな混乱は簡単に以下のCSSクリップ/矩形プロパティのこの視覚的な説明と、消えることができます!!

CSSクリップの要件

我々が開始したタスクは、正方形を見た画像(また、広角画像)に次のサムネイル画像をクリップすることである

original_image clip_demo
オリジナルThumbnal /イメージ Sqaure Thumbmailのクリップの要件

CSSのクリップが見つかりました

clip_results

デモ表示 | ダウンロード、ソースファイルを


2008 2008年 10月 12

垂直方向(方向と水平方向)センターでは、CSSを使用してDIVのコンテンツの整列

我々はテーブルセル内の一部のコンテンツを合わせて、ページレイアウトを作成するために、CSSに対処しなければならなかった直前に子供の遊びだった。 単にケーキ、お好みのアライメントを持つようにテーブルの" 整列 "または"VALIGN"プロパティを設定!
CSSレイアウトでは、我々の要素に対して"のvertical-align"プロパティたけれども、それは" 整列 "または"VALIGN"プロパティのように単純ではないようです。 もっとspecifiicになる" のvertical-align"クロスブラウザのCSSの一部を書き込みしている場合は特に、あなたの問題のいずれかを解決するように思わなかった。

HTMLテーブルを使用せずに、オブジェクトを中心の問題は、画像またはコンテナ部門内のいくつかのテキストになり、おそらくいくつかの点ですべてのUI / CSSの開発者の悪夢であった。 この問題は、さらにオブジェクトを中央揃えする場合は、合わせてのお悩みは本質的に動的で外挿し、その高さが可変であるとき、すなわち(未知の高さ)。

我々が対処しなければならないブラウザの範囲にわたって動作します既知のまっすぐ解決策はありませんが、私が到着しようとしたことの解決策は私は(IE6、IE 7でそれをしようとしたこといくつかのブラウザで動作するように見えるん。 、FF)。

解決策:
Mozillaは、OperaやSafariなどのブラウザでは、奇妙な振る舞いプロパティは単に" テーブルセル "(表示:テーブルのセル)を含有する部門の" 表示 "プロパティを設定することによって、その感覚にさせることができる" のvertical-align"

問題は、まだ彼らはそれを無視して、まだそのまま" テーブルセル "プロパティと無知で何に理解していないようだ誰が、ブラウザのIEの家族と一緒に残ります。 物事が起こるようにするあなたのHTMLに簡単に、広告がさらにいくつかのDOM要素も、下記のソリューションを提供します。

CSSとHTMLは次のようになります。
.outer_container {
display: table;
text-align:center;
height: 140px;
width:140px;
position: relative;
overflow: hidden;
float:left;
margin:0px 10px 0px 0px;
}
.obj_container {
display: table-cell;
vertical-align: middle;
#position: absolute;
#top: 50%;
#left:50%;
}
.obj{
#position: relative;
#top: -50%;
#left:-50%;
margin:0px auto 0px auto;
}

HTML: -
<div class="outer_container">
<div class="obj_container">
<div class="obj"> <img src="image1.jpg"/>ビュー。<BR/>:3456 </ DIV>
</ DIV>
</ DIV>

結果は次のようになります: -

HTML_CSS_vertical_align_vertical_middle_aligned_images

ここでデモを表示する | ダウンロードソースファイル (451回ダウンロード)


解決策を理解する:
テーブルディスプレイ:ディスプレイを理解するブラウザ用のテーブルセルのプロパティには、ほとんどすべての説明を必要としません。 IEの場合は、使用するIE固有のハック( ハッシュハック )で、我々は絶対に使用可能な高さの半分でオブジェクトのコンテナ(obj_container)を配置します。 その後内でオブジェクト(obj)は 、比較的位置であり、その高さの半分だけ上に移動されてい...まあ! 私はあなたの顔を理解するように見えるが、これは動作します。 お試しください!
上記の技術は私達に、上記のクロスブラウザの解決策を与えるために結合されます。


CSSは簡単に達成するために、以下のように変更することができます、 のvertical-align:topまたはのvertical-align:ボトム

TOPは、CSSを合わせ
.obj_container_top {
display: table-cell;
vertical-align: top;
#position: absolute;
#top: 0%;
#left:50%;
}
.obj_top{
#position: relative;
#top: 0%;
#left:-50%;
margin:5px auto 0px auto;
font-family:Verdana, Arial, Helvetica, sans-serif;
font-size:10px;
color:#cccccc;
}

HTML: -
<div class="outer_container">
<div class="obj_container_top">
<div class="obj_top"> <img src="image1.jpg"/>ビュー。<BR/>:1234 </ DIV>
</ DIV>
</ DIV>

結果は次のようになります: -

HTML_CSS_vertical_align_vertical_top_aligned_images

BOTTOMは、CSSを合わせ
.obj_container_bottom {
display: table-cell;
vertical-align: bottom;
#position: absolute;
#bottom: 0%;
#left:50%;
}
.obj_bottom {
#position: relative;
#bottom: 0%;
#left:-50%;
margin:5px auto 0px auto;
}

HTML: -
<div class="outer_container">
<div class="obj_container_bottom">
<div class="obj_bottom"> <img src="image1.jpg"/>ビュー。<BR/>:1234 </ DIV>
</ DIV>
</ DIV>

結果は次のようになります: -

HTML_CSS_vertical_align_vertical_bottom_aligned_images

ここでデモを見る | ここからダウンロード


単に、マージン左を設定することにより、マージン、右マージンをautoにプロパティを使用して達成したオブジェクトの中心に水平方向の

私はこのアライメント問題に対する合理的な解決策を見つけることをしようとしていたので、年齢のように思える。 しかし、今、このソリューションで、私は少し平和に感じる。

そのいつか希望をもって

  • CSSの垂直整列プロパティは、ブッシュの周りに多くを打つことなく、それは表のセルの内側にないように動作します
  • 少なくとも、マージントップ:オートとマージン底:autoは、マージンと左マージン、右セットの自動への場合と同じ結果として得られます
  • ブラウザ戦争はいつの日か以上になります。
  • ALLのためだけのブラウザがあります。

ここで上記の溶液のCSSとHTMLをダウンロード (451回ダウンロード)..わかりやすさのために、CSSが最適化されていません

PS:ところで、それらは、私がクリックしたいくつかの写真のサムネイルは... :)


2008 2008年 10 10

だけでなく、IEの場合- CSSの子供セレクタIEで動作しません。

IE以外のブラウザのCSS:CSSの開発者へのないニュースその、下の例のようなCSSの子供セレクタは、IEで動作するようには思えない。

例えば、div要素を意味する>スパン{いくつかのCSS}、 "span要素は、分割要素の子要素(およびNOT孫または偉大な孫など)であるとき"。

しかし、我々の利点にこのCONを使用していました。 歴史的に、子セレクタがIEからCSSコマンドを隠すために使用されています。 単に置くことによってhtml>body任意のCSSコマンド IE の前でそれを無視します。

html>body .foo { CSS commands go here ;}

この作品のため<body>いつもの子である<html> -それはもちろんの孫やひ孫にすることはできません<html>

現在IE 7は子セレクタを理解することは、大なり記号の直後に空のコメントタグを挿入する必要がIE 7は、このセレクタを理解しません(なぜ知っている人!)、したがって、完全にこのCSSコマンドを無視します。

html> /**/ body .foo { CSS commands go here ;}

既にこれらの前に見ていない場合は、同様に次のように目を通しを持っている


NDKホーム | ITを表現 | 表現口蓋 | Penmenshipを表現 | 表現する素晴らしい | 自分を表現