<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:media="http://search.yahoo.com/mrss/"><channel><title><![CDATA[Web Notları]]></title><description><![CDATA[Web üzerine notlar]]></description><link>http://zettlina.com/</link><generator>Ghost 0.11</generator><lastBuildDate>Thu, 27 Nov 2025 15:45:23 GMT</lastBuildDate><atom:link href="http://zettlina.com/rss/" rel="self" type="application/rss+xml"/><ttl>60</ttl><item><title><![CDATA[Bağlantılar için download özniteliği]]></title><description><![CDATA[<p>HTML5 sürekli gelişen bir standart. Bu gelişmelerden biri de <a href="https://www.w3.org/TR/html5/links.html#attr-hyperlink-download"><code>download</code></a> özniteliği. Bu öznitelik bağlantısını belirttiğiniz kaynağın indirileceğini belirtiyor. Yani istemci (bu örnekte tarayıcı) bu içeriği görüntülemeye çalışmak yerine bilgisayara indirme ekranını açacaktır.</p>

<pre><code>&lt;a href=https://vivaldi.com/press/icons/viv_icon.png download&gt;Vivaldi Logosu&lt;/a&gt;</code></pre>]]></description><link>http://zettlina.com/baglantilar-icin-download-ozniteligi/</link><guid isPermaLink="false">e8f56780-a118-401a-90e9-92300c9e074a</guid><category><![CDATA[html5]]></category><dc:creator><![CDATA[C]]></dc:creator><pubDate>Thu, 21 Jul 2016 12:43:44 GMT</pubDate><content:encoded><![CDATA[<p>HTML5 sürekli gelişen bir standart. Bu gelişmelerden biri de <a href="https://www.w3.org/TR/html5/links.html#attr-hyperlink-download"><code>download</code></a> özniteliği. Bu öznitelik bağlantısını belirttiğiniz kaynağın indirileceğini belirtiyor. Yani istemci (bu örnekte tarayıcı) bu içeriği görüntülemeye çalışmak yerine bilgisayara indirme ekranını açacaktır.</p>

<pre><code>&lt;a href=https://vivaldi.com/press/icons/viv_icon.png download&gt;Vivaldi Logosu&lt;/a&gt;  
</code></pre>

<p>Bu örnekteki resim tarayıcı ekranında gösterilmek yerine indirilecektir. </p>

<p>Eğer <code>download</code> özniteliğine bir değer verirsek, indirme ekranında varsayılan dosya ismi bu değer olacaktır.  </p>

<pre><code>&lt;a href=https://vivaldi.com/press/icons/viv_icon.png download="Vivaldi Logosu.png"&gt;Vivaldi Logosu&lt;/a&gt;  
</code></pre>

<p>Bu özelliği Edge, Chrome, Firefox, Opera ve Vivaldi <a href="http://caniuse.com/#feat=download">desteklemekte</a>.</p>]]></content:encoded></item><item><title><![CDATA[text-transform kuralı ve I, ı, İ, i Karakterleri Dönüşüm Sorunu]]></title><description><![CDATA[<p><code>text-tranform</code> CSS kuralı ile bir elementin içindeki karakterlerin büyük – küçük harfler arası dönüşümünü sağlayabiliyorsunuz. W3C önergesine göre bu dönüşüm, elementin içeriğindeki metnin algılandığı dilde yapılmalı. Yani metin İngilizce ise İngilizce karakterler arasında,  Rusça ise Ruça karakterler arasında yapılmalı. Ancak Türkçe bir sayfada bu kuralı kullandığınızda i’ler I’ya, ı’</p>]]></description><link>http://zettlina.com/text-transform-kurali-ve-i-i-i-i-karakterleri-donusum-sorunu/</link><guid isPermaLink="false">1ed11a12-9724-4a0a-97fb-2fe9ad19714d</guid><category><![CDATA[CSS]]></category><category><![CDATA[hata]]></category><category><![CDATA[tarayıcılar]]></category><category><![CDATA[text-transform]]></category><dc:creator><![CDATA[C]]></dc:creator><pubDate>Tue, 04 Dec 2012 05:29:09 GMT</pubDate><content:encoded><![CDATA[<p><code>text-tranform</code> CSS kuralı ile bir elementin içindeki karakterlerin büyük – küçük harfler arası dönüşümünü sağlayabiliyorsunuz. W3C önergesine göre bu dönüşüm, elementin içeriğindeki metnin algılandığı dilde yapılmalı. Yani metin İngilizce ise İngilizce karakterler arasında,  Rusça ise Ruça karakterler arasında yapılmalı. Ancak Türkçe bir sayfada bu kuralı kullandığınızda i’ler I’ya, ı’lar da I’ya dönüşmekte.  Peki neden böyle bir sorun mevcut?Öncelikle sorunu daha rahat ifade etmek için bir örnek göstermek gerekli. Aşağıda uzun bir örnek ve <a href="http://www.w3.org/International/tests/tests-html-css/tests-text-transform/generate?test=5">W3C üzerinde de bir sınama vakası</a> var.  </p>

<iframe frameborder="0" height="240" src="http://jsfiddle.net/greench/bbpy3/1/embedded/result,html,css" style="width: 100%; height: 300px;" width="320"></iframe>  

<p>Sorun yukarıda da belirttiğim gibi, Türkçe metinde ı&lt;->I ve i&lt;->İ arası dönüşümde harflerin kendisinin değişmesi. Şunu rahatlıkla söyleyebilirim ki <a href="http://www.w3.org/TR/CSS21/text.html#caps-prop">W3C CSS 2.1 önergesi</a>nde bu dönüşümün nasıl yapılacağına dair verilen tarife göre bizlerin bu şekilde bir sorunla karşılaşmaması gerekli. Biraz daha araştırınca, bu sorun tarayıcı üreticilerinin göz ardı ettiği ve üzerine hata raporlarının açıldığı eskice konulara kadar uzanıyor. Dahası <a href="http://dev.w3.org/csswg/css3-text/#text-transform">CSS3 içindeki ilgili taslak önerge</a>de bu soruna gönderme bile var. Mozilla Firefox bu konuda bir çalışma yaptı ve Türkçe gibi başka dillerde meydana gelen bu sorunu çözdü. Ancak diğer tarayıcılarda bu sorun helen çözülmeyi bekliyor. Şuan herkese açık iki tarayıcı çekirdeği mevcut. <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=231162">Gecko olanda sorun çözülmüş</a> durumda, <a href="https://bugs.webkit.org/show_bug.cgi?id=21312">webkit’te ise bu sorun 21312 numaralı hata kaydı</a> olarak bildirilmiş durumda. Presto ve Trident’in ise hata takip sistemine ulaşamadığımız için herhangi bir bilgi veremeyeceğim.</p>

<p>Sonuç olarak bu yazı soruna bir çözüm önermiyor, sadece sorunun durumunu ortaya koyuyor. Tarayıcı çekirdeklerindeki sorun çözüldükçe daha serbest şekilde <code>text-transform</code> kullanabileceğiz. Tarayıcı üreticilerinin şuanki öncelikleri sanırım bu konu değil, belki onların kulağını biraz çekmek gerekiyor olabilir. Ne dersiniz?</p>]]></content:encoded></item><item><title><![CDATA[Özgür Web Teknolojileri Günleri '12]]></title><description><![CDATA[<p>Geçtiğimiz hafta, bu sene üçüncüsü düzenlenen Özgür Web Teknolojileri Günlerine hem konuşmacı olarak hem de Opera web tarayıcısını tanıtan birisi olarak katıldım. İnsanlara bir yandan W3C Web Eğitimi Topluluğunu tanıttım diğer yandan web eğitimi konusunda Türkiye’de bir şeyler yapabileceğimizi <a href="http://zettlina.com/sunum/w3c_webed_introduction">W3C Web Eğitimi Topluluğu ve Doğru Web Eğitimi</a> sunumunda insanlara</p>]]></description><link>http://zettlina.com/ozgur-web-teknolojileri-gunleri-12/</link><guid isPermaLink="false">99d474e9-d26c-48a2-8fba-6e45a461a964</guid><dc:creator><![CDATA[C]]></dc:creator><pubDate>Thu, 25 Oct 2012 12:18:06 GMT</pubDate><content:encoded><![CDATA[<p>Geçtiğimiz hafta, bu sene üçüncüsü düzenlenen Özgür Web Teknolojileri Günlerine hem konuşmacı olarak hem de Opera web tarayıcısını tanıtan birisi olarak katıldım. İnsanlara bir yandan W3C Web Eğitimi Topluluğunu tanıttım diğer yandan web eğitimi konusunda Türkiye’de bir şeyler yapabileceğimizi <a href="http://zettlina.com/sunum/w3c_webed_introduction">W3C Web Eğitimi Topluluğu ve Doğru Web Eğitimi</a> sunumunda insanlara gösterdim. Bu grup daha fazla etkin hareket ettirmenin zamanı geldi…</p>

<p>Diğer yandan, <a href="http://www.opera.com">Opera Software</a>‘den <a href="http://my.opera.com/patrickhlauke/about/">Patric</a> <a href="http://www.slideshare.net/redux/catching-bugs-with-opera-dragonfly-zgr-web-teknolojileri-gnleri-istanbul-19-october-2012">Dragonfly üzerine bir sunum</a> yaptı. Hata ayıklamada kullanılabileceğiniz bu mucize araç üzerine yazılabilecek oldukça çok şey var. Kabaca Firefug’ın Opera’daki karşılığı diyebilirsiniz ve CTRL + Shift + i ile erişebilirsiniz.</p>

<p>Opera Türkiye ekibi ile beraber bir tanıtım masamız vardı ve insanlara Opera ürünlerini tanıttık. Detaylı bilgileri <a href="http://www.operaturkiye.net/etkinlikten-kisa-kisa/">Opera Türkiye</a> üzerinden edinebilirsiniz.</p>]]></content:encoded></item><item><title><![CDATA[meb.gov.tr ve childNodes kullanımı]]></title><description><![CDATA[<p>meb.gov.tr üzerindeki bazı sitelerin Opera üzerinde düzgün görüntülenmediği haberini aldım. Mesela <a href="http://aio.meb.gov.tr/">aio.meb.gov.tr</a> sitesinde menü ve içerik düzgün görüntülenmiyor. </p>

<p>Sorunun araştırırken ilk karşılaştığım şey hata uçbirimindeki hatalar oldu. Javascript, bir XML dosyası üzerinde belli bir elemente ulaşmaya çalışıyor ancak o element bulunamadığı için hata meydana geliyordu.</p>]]></description><link>http://zettlina.com/meb-gov-tr-ve-childnodes-kullanimi/</link><guid isPermaLink="false">1a9f109f-fdc5-4365-851e-8f7d08bc8b1e</guid><dc:creator><![CDATA[C]]></dc:creator><pubDate>Wed, 25 Jul 2012 13:32:37 GMT</pubDate><content:encoded><![CDATA[<p>meb.gov.tr üzerindeki bazı sitelerin Opera üzerinde düzgün görüntülenmediği haberini aldım. Mesela <a href="http://aio.meb.gov.tr/">aio.meb.gov.tr</a> sitesinde menü ve içerik düzgün görüntülenmiyor. </p>

<p>Sorunun araştırırken ilk karşılaştığım şey hata uçbirimindeki hatalar oldu. Javascript, bir XML dosyası üzerinde belli bir elemente ulaşmaya çalışıyor ancak o element bulunamadığı için hata meydana geliyordu. Biraz daha detayına girince elementlerin b isimli bir değişkenin değerine bağlı olarak çağrıldıklarını farkettim. Bu değişken ise beni sorunun kaynaklandığı yere götürdü. <a href="http://aio.meb.gov.tr/xmlAnasayfaLoader.js">http://aio.meb.gov.tr/xmlAnasayfaLoader.js</a> ve <a href="http://aio.meb.gov.tr/xmlMenuLoader.js">http://aio.meb.gov.tr/xmlMenuLoader.js</a> dosyalarında <code>browserKontrol()</code> isimli birer fonksiyon tanımlanmış ve bu fonsiyon çağırılınca b isimli global bir değişkenin değeri değiştiriliyor. Eğer tarayıcı Internet Explorer ise <code>0</code> değerini, Netscape ise <code>1</code> değerini alıyor. Yani işin özeti tarayıcıya göre bir kontrol söz konusu.  <iframe frameborder="0" height="240" src="http://jsfiddle.net/greench/QWjHe/embedded/js,result" style="width: 100%; height: 225px;" width="320"></iframe></p>

<p>Bu kullanım ve b isimli değişken menü oluşturulurken, XML verisi okumada kullanılıyor, yani Opera’nın hata ürettiği yerde.  Tarayıcı kontrolünün yapılmasının ve bu b değişkenine ihtiyaç duyulmasının nedeni, açık web standartları ve Microsoft standartları arasındaki farklardan dolayıdır. Bu alandaki en önemli fark boşlukların ve yeni satırların nasıl değerlendirileceği üzerinedir. Microsoft Internet Explorer, XML dosyasındaki düğümler arası boşlukları ve yeni satırları önemsemezken, diğer tarayıcılar bunları yeni birer düğüm olarak görmekteler. Böylece bir elementin çocuk sayısı, ebeveyni o olan element sayısı, değişebilir.</p>

<iframe frameborder="0" height="240" src="http://jsfiddle.net/greench/Z2L4g/embedded/js,result" style="width: 100%; height: 300px;" width="320"></iframe>

<p>Bir elementin childNodes özelliği, o elementin altında bulunan elementleri içeren bir dizidir aslında. Örnek olarak aşağıdaki bir kullanım W3C tarafından önerilen bir kullanım şeklidir.</p>

<iframe frameborder="0" height="240" src="http://jsfiddle.net/greench/SsTpr/embedded/js,result,html" style="width: 100%; height: 300px;" width="320"></iframe>

<p>Internet Explorer kullanıcıları yukarıdaki örneği farklı bir sonuçla görmektedirler. Meb’in bu sitesini hazırlayan web geliştiricileri bu uyumsuzluk problemini aşmak için tarayıcı kimliğine göre hareket etme kararı almışlardır, ancak bu her zaman faydalı bir çözüm değildir. Özellikle tarayıcı dünyasına yeni oyuncuların girdiği şu zamanlarda(tarayıcılar artık sadece masaüstü platformunda değiller).</p>

<p>Web geliştiricileri aşağıdaki gibi bir kod kullanarak bu problemi aşabilirlerdi. Bu aynı zamanda Mozilla’nın web geliştiricilerine önerdiği yöntem. Kod bakımını azaltan ve oldukça doğru çalışan bir yöntem.</p>

<iframe frameborder="0" height="240" src="http://jsfiddle.net/greench/WxEcf/embedded/js,result" style="width: 100%; height: 300px;" width="320"></iframe>

<p>Buradaki tek fark yazı ve yorumları içeren çocuk elementleri aşmak için nodeType kontrolü yapılmıştır. IE, diğer tarayıcılar gibi yazı içeriği ve yorum içerek elementleri alt bir çocuk element olarak algılamıyor. Bu düzen, Microsoft’un çalışmasını arzu ettiği şekilde.</p>

<p>Sitede bunun gibi 6 tane kullanım var. DOM üzerinde JavaScript ile yapılan işlemler genelde bir ağırlık yaratır ancak sitedeki uygulama bariz bir ağırlaşmaya sebep olacak kadar veri içermiyor. En nihayetinde üzerinde çalıştığımız xml dosyaları büyük boyutlu değil. nodeType kontrollerinin yapılması sitenin performansını pek de etkilemeyeceğini söyleyebiliriz. Açık Webli günler….</p>

<h3 id="kaynaklar">Kaynaklar</h3>

<ul>
<li><a href="http://www.w3schools.com/dom/dom_mozilla_vs_ie.asp">W3 School</a></li>
<li><p><a href="https://developer.mozilla.org/en/Migrate_apps_from_Internet_Explorer_to_Mozilla/">Migrate apps from Internet Explorer to Mozilla</a></p></li>
</ul>]]></content:encoded></item><item><title><![CDATA[Genel Öznitelikler - HTML5 Eğitimi]]></title><description><![CDATA[<p>HTML Etiketlerine Giriş yazımızda elementleri, öznitelik adında anahtar kelimelerle ayarlayabileceğimizden bahsetmiştik. Bu yazımızda ise HTML5 elementlerine ekleyebileceğiniz genel özniteliklerden ve bunların ne amaçla kullanıldığından bahsedeceğiz.</p>

<p>Genel öznitelikler neredeyse tüm HTML elementlerinde kullanılabilecek öznitelikleri kapsar. Bunları iki gruba ayırabiliriz: <em>öznitelikler</em> ve <em>olay tutucu</em>lar.</p>

<p>Öznitelikler o elemente ait belli karakteristik özellikleri</p>]]></description><link>http://zettlina.com/genel-oznitelikler-html5-egitimi/</link><guid isPermaLink="false">c032cc95-c95b-4187-ac76-5a92b8c745da</guid><category><![CDATA[eğitim]]></category><category><![CDATA[Özgür Web]]></category><dc:creator><![CDATA[C]]></dc:creator><pubDate>Wed, 11 Jul 2012 11:56:32 GMT</pubDate><content:encoded><![CDATA[<p>HTML Etiketlerine Giriş yazımızda elementleri, öznitelik adında anahtar kelimelerle ayarlayabileceğimizden bahsetmiştik. Bu yazımızda ise HTML5 elementlerine ekleyebileceğiniz genel özniteliklerden ve bunların ne amaçla kullanıldığından bahsedeceğiz.</p>

<p>Genel öznitelikler neredeyse tüm HTML elementlerinde kullanılabilecek öznitelikleri kapsar. Bunları iki gruba ayırabiliriz: <em>öznitelikler</em> ve <em>olay tutucu</em>lar.</p>

<p>Öznitelikler o elemente ait belli karakteristik özellikleri belirlemede kullanılır. Özniteliklerin isimlerini, ne işe yaradığını ve nasıl kullanıldığını aşağıdaki başlıklardan okuyabilirsiniz.</p>

<h3 id="genelznitelikler">Genel Öznitelikler</h3>

<p>Aşağıdaki anahtar kelimeler neredeyse tüm HTML elementlerinde öznitelik adı olarak kullanılabilir.</p>

<h4 id="accesskey">accesskey</h4>

<p>HTML elementleri erişim tuşlarına sahip olabilirler. Bu sayede klavye düğmelerine basarak bu elementlere kolayca ulaşabilirsiniz. Kullanıcıların özellikle form elementlerine ve bağlantılara tek tuşa basarak kolayca ulaşması için kullanabilirsiniz. Bu sayede fare kullanmakta güçlük çeken insanlar için sitenizde alternatif bir kullanım yolu sağlarsınız.</p>

<p>Genel kullanım şekli;</p>

<p><code>&lt;etiketadi accesskey="karakter"&gt;Element içeriği&lt;/etiketadi&gt;</code></p>

<p>Örnek kullanım şekli;</p>

<iframe frameborder="0" height="240" src="http://jsfiddle.net/greench/wxc9X/embedded/result,html" style="width: 100%; height: 125px;" width="320"></iframe>

<p>Accesskey özniteliği olan elementlere ulaşmak için alt tuşuna basarken <code>accesskey</code>de belirtilen değere basmak yeterlidir. Örneğin yukarıdaki <em>Opera Türkiye’ye Bağlantı</em> elementine ulaşmak için alt+o klavye kısayolunu kullanmak gereklidir. Opera web tarayıcısında ise shift+esc düğmesine basarak sayfada kullanabileceğiniz tüm accesskeyleri görebilirsiniz.</p>

<h5 id="html5ileeklenenksm"><strong>HTML5 ile eklenen kısım</strong></h5>

<p>Bir elemente birden fazla accesskey atanabilir. Bunun için her karakter arasında boşluk bırakmanız gerekli. Örneğin;</p>

<iframe frameborder="0" height="240" src="http://jsfiddle.net/greench/GtAUK/1/embedded/html,result" style="width: 100%; height: 100px;" width="320"></iframe>

<p>Yukarıdaki örneği klavyesinde s karakteri olmayan bir cihazda, cep telefonu gibi, 0 tuşuna basarak da bu elemente ulaşabilirsiniz.</p>

<p><strong>Uyarı:</strong> Bir elemente birden fazla tuş ayarlama özelliği <a href="http://www.w3.org/TR/html5-author/editing.html#the-accesskey-attribute" title="W3C accesskey özniteliği">W3C HTML5 tanımlaması</a>nda yer alsa da henüz tarayıcılar tarafından uygulanmamıştır. Bu yüzden düzgün sonuç alamayabilirsiniz.</p>

<h4 id="class">class</h4>

<p>Elementleri sınıflandırmak için class özniteliğini kullanabilirsiniz. Bu sınıflar pratikte daha kolay CSS kodu yazmanızı sağlar. Tüm tarayıcılarca desteklenir.</p>

<p><code>&lt;etiketadi class="class1 class2"&gt;Element İçeriği&lt;/etiketadi&gt;</code></p>

<p>Örnek kullanım;</p>

<iframe frameborder="0" height="240" src="http://jsfiddle.net/greench/X3tgY/embedded/result,html,css" style="width: 100%; height: 240px;" width="320"></iframe>

<p><strong>Not:</strong> Bir element birden fazla class değerine sahip olabilir. Bunlar boşluk ile ayrılmalıdır.</p>

<h4 id="contenteditable">contenteditable</h4>

<p>HTML görüntülerken elementlerin içeriğini düzenlemek için kullanılır. Değer olarak iki farklı değer alır: <code>true</code> ve <code>false</code>.  Elementi düzenlenebilir durumda getirmek için <code>contenteditable</code> özniteliğini değerini <code>true</code> olarak belirmek gereklidir. Eğer değer false olursa element düzenlenemez durumdadır. Bunlar dışında kalan değerler için üçüncü bir durum vardır: <code>inherit</code>. <code>Inherit</code> kalıtsal anlamına gelir ve elementin bir üstündeki elementin, kapsayıcı elementin, evebeyn elementin, <code>contenteditable</code> değeri baz alınır. Tüm masaüstü tarayıcı sürümlerinde bu öznitelik desteklenir.</p>

<p><code>&lt;etiketadi contenteditable="true|false|inherit"&gt;Element İçeriği&lt;/etiketadi&gt;</code></p>

<p>Örnek;  </p>

<iframe frameborder="0" height="240" src="http://jsfiddle.net/greench/66gJe/embedded/result,html" style="width: 100%; height: 100px;" width="320"></iframe>

<h4 id="contextmenu">contextmenu</h4>

<p>Bir elemente sağ tıkladığınızda o elemente özel kullanılabilecek komutların gösterilmesini sağlamaktadır. Mesela bir yazı girme alanına sağ tıkladığınızda çıkacak bir komut ile büyük-küçük harfler arasında değişimler yapmak için kullanabilirsiniz. Bu özellik şu anda hiçbir tarayıcıya eklenmemiştir. 8+ sürümlerinde Firefox bunun w3c kuralına tam olarak uymayan, ama oldukça yakın, bir uygulamasına sahiptir. Firefox’un sağladığı örneğine erişmek için <a href="http://people.mozilla.com/~prouget/bugs/context-menu-test/test.html">bu adresi</a> kullanabilirsiniz.</p>

<p><code>&lt;elementadi contextmenu="menünün id değeri"&gt;Element içeriği&lt;/elementadi&gt;</code></p>

<iframe frameborder="0" height="240" src="http://jsfiddle.net/greench/Rd2vf/embedded/result,html" style="width: 100%; height: 200px;" width="320"></iframe>

<h4 id="dir">dir</h4>

<p>Türkçe soldan sağa doğru yazılan bir dil. Ancak tüm diller bu şekilde değil, dir özniteliği Arapça gibi diller için yazının sağdan sola akacağını belirtmede kullanılır. Bu öznitelik üç değere sahip olabilir:  <em>ltr</em>, <em>rtl</em> ve <em>auto</em>. ltr, left-to-right soldan sağa; rtl, right-to-left sağdan sola; auto ise <a href="http://dev.w3.org/html5/spec/global-attributes.html#the-dir-attribute">belirli kıstaslara göre</a> hangisinin kullanılacağını belirler.</p>

<p><code>&lt;elementadi dir="ltr|rtl|auto"&gt;Element içeriği&lt;/elementadi&gt;</code></p>

<iframe frameborder="0" height="100" src="http://jsfiddle.net/greench/9Mgtb/embedded/result,html" style="width: 100%; height: 100px;" width="320"></iframe>

<h4 id="draggable">draggable</h4>

<p>Kullanıcının bu elementi sürükleyebileceğini belirtmek için kullanılır. Üç değer alır. <em>true</em>, <em>false</em>, <em>auto</em>. <em>true</em> olarak belirlenirse element, kullanıcı tarafından sürüklenebilir.  <em>false</em> olursa sürükleme işlemine imkan tanınmaz. <em>auto</em> değerinde ise bu imkanın sağlanıp sağlanmayacağı tarayıcıya bırakılır, varsayılan değer de bu değerdir. <em>href</em> özniteliğine sahip bağlantılar ve resimler sürüklenebilir elementlerdir.IE haricindeki web tarayıcılarınca desteklenir.</p>

<p><code>&lt;elementadi draggable="true"&gt;Element içeriği&lt;/elementadi&gt;</code></p>

<iframe frameborder="0" height="240" src="http://jsfiddle.net/greench/wtwBz/embedded/result,html" style="width: 100%; height: 125px;" width="320"></iframe>

<h4 id="dropzone">dropzone</h4>

<p>Kullanıcının sürüklediği elementlerin bırakıldığında taşınan içeriğin nasıl işleneceğini belirtmede kullanılır. ÜÇ farklı değer alır: <code>copy</code>, <code>move</code>, <code>link</code>. <code>copy</code> değerini aldığında taşınan içerik bırakılan yere kopyalanır. <code>move</code> değerini aldığında ise taşınan içeriğin ikinci bir kopyası oluşturulmaz ve yeri değiştirilir. <code>link</code> değerini aldığında ise özgün içeriğe bir bağlantı verilir. Bu üç değerden ayrı olarak <code>file:</code> veya <code>string:</code> ile başlayan ikinci bir parametre daha alabilir. Bu ikinci parametre kabul edilebilecek içeriği belirtir. Bu özellik şu anda hiç bir tarayıcı tarafından desteklenmemektedir.  </p>

<iframe frameborder="0" height="240" src="http://jsfiddle.net/greench/MpBpp/embedded/" style="width: 100%; height: 300px;" width="320"></iframe>  

<p>Bu örnek w3c HTML5 belirtiminden alınmıştır.</p>

<h4 id="hidden">hidden</h4>

<p>Bu öznitelik elementi gizlemek için kullanılır. Bu öznitelik doğru/yanlış şeklinde iki yönlü çalışır. Eğer ifade edilmişse element gizlenir. Web tarayıcısı bu özniteliğin kullanıldığı elementleri ekranda göstermez. JavaScript yardımıyla bu öznitelik kaldırılabilir.</p>

<p><code>&lt;elementadi hidden="hidden"&gt;Element içeriği&lt;/elementadi&gt;</code></p>

<iframe frameborder="0" height="240" src="http://jsfiddle.net/greench/FKX5k/embedded/result,html" style="width: 100%; height: 75px;" width="320"></iframe>

<h4 id="id">id</h4>

<p>Bütün elementlere bir eşsiz bir isim vererek onları adlandırabilirsiniz. Böylece bütün elementleri birbirinden ayırabilirsiniz.</p>

<p><etiketadi id="benzersizbirisim">Element içeriği</etiketadi></p>

<p>Örnek kullanım şekli  </p>

<iframe frameborder="0" height="240" src="http://jsfiddle.net/greench/TdY78/embedded/html,css,result" style="width: 100%; height: 100px;" width="320"></iframe>  

<p>id özniteğine vereceğiniz değerde en az bir karakter bulunmalı ve boşluk olmamalıdır.</p>

<p>id özniteliği çeşitli amaçlar için kullanabilirsiniz. CSS ya da Javascript ile kod yazarken bu elementlere doğrudan ulaşabilirsiniz. Örneğin aşağıdaki yukarıda kullanılan elementlere doğrudan</p>

<p><code>#ilkparagraf { //css kodu } #alttakikutu { // alttaki kutu için uygulanacak css kodu }</code></p>

<p>css kodlarıyla ulaşabilirsiniz. JavaScript ile ulaşmak için <code>document.getElementById("ilkparagraf")</code> ve <code>document.getElementById("alttakikutu")</code> şeklinde bir kod yazmanız bu elemente ulaşmanız için yeterlidir.</p>

<h4 id="lang">lang</h4>

<p>Bu öznitelik, bu elementin içeriğinin hangi dilde yazıldığını gösteriyor. Google, Bing, Yahoo, Yandex gibi arama motorları sitelerin dillerini bu özniteliğin değerine göre belirler.</p>

<p><code>&lt;elementadi lang="dil kısaltması"&gt;içerik&lt;/elementadi&gt;</code></p>

<iframe frameborder="0" height="240" src="http://jsfiddle.net/greench/aaVpQ/embedded/" style="width: 100%; height: 100px;" width="320"></iframe>

<h4 id="spellcheck">spellcheck</h4>

<p>Elementin içindeki yazı üzerinde yazım denetimi yapılıp yapılmayacağını belirtir. İki değer alır: <code>true</code>, <code>false</code>. Bu öznitelik true değerine sahipse aşağıdakiler için yazım denetimi yapar:</p>

<ul>
<li>Girdi elementlerindeki yazılar(şifreler hariç)</li>
<li><code>textarea</code> elementindeki yazılar</li>
<li>İçeriği düzenlenebilir elementlerdeki(contenteditable=true öznitelikli elementler) yazılar</li>
</ul>

<p><code>&lt;elementadi spellcheck="true"&gt;içerik&lt;/elementadi&gt;</code></p>

<p>Şu an sadece Opera ve Chrome tarafından desteklenmektedir. IE10 ise bu desteği bir kaç yenilikle beraber sunacaktır.  </p>

<iframe frameborder="0" height="240" src="http://jsfiddle.net/greench/XTJFn/embedded/result,html" style="width: 100%; height: 100px;" width="320"></iframe>

<h4 id="style">style</h4>

<p>Bir elemente satıriçi (inline), yani doğrudan kendi üzerinden, css biçimi eklemede kullanılır. Bu özniteliğin aldığı değer gerçekte bir css kod blokudur. Bu CSS kodları tek bir dosyada toplanarak sayfanın açılması daha verimli kılınabilir(önbellekleme yardımıyla).</p>

<p><elementadi style="elemente uygulanacak css kodu">element içeriği</elementadi></p>

<iframe frameborder="0" height="240" src="http://jsfiddle.net/greench/qUHJT/embedded/result,html" style="width: 100%; height: 150px;" width="320"></iframe>

<h4 id="tabindex">tabindex</h4>

<p>Bu öznitelik, tab tuşuna basıldığında elementin kaçıncı sırada odaklanılacağını belirtir. Tab tuşu bir formda, form elementleri arasında dolaşmayı ve aynı zamanda bağlantılar üzerinde de gezinmeyi kolaylaştırır. <code>tabindex</code> 0 ile 32767 arası bir tam sayı değeri alır. <code>tabindex</code> özniteliği sadece A, AREA, BUTTON, INPUT, OBJECT, SELECT ve TEXTAREA elementleriyle kullanılır.</p>

<p><code>&lt;elementadi tabindex="sayi"&gt;elementiçeriği&lt;/elementadi&gt;</code></p>

<iframe frameborder="0" height="240" src="http://jsfiddle.net/greench/cVPK7/embedded/result,html" style="width: 100%; height: 150px;" width="320"></iframe>

<h4 id="title">title</h4>

<p>Fare ile bir elementin üzerine geldiğinizde belirecek ipucu balonunda ne yazacağını belirtir. Tüm tarayıcılarca desteklenir.</p>

<p><code>&lt;elementadi title="yazi"&gt;elementiçeriği&lt;/elementadi&gt;</code></p>

<iframe frameborder="0" height="240" src="http://jsfiddle.net/greench/XPLmx/embedded/result,html" style="width: 100%; height: 75px;" width="320"></iframe>

<h3 id="olaytutucular">Olay Tutucuları</h3>

<p>Aşağıdaki listede bir HTML elementinde kullanılabilecek olay tutucuları göstermektedir. Örneğin onclick o elemente ait tıklama olayında yapılacak komutlatı saklar. Bu bölüm Javascript ile ilgilidir. Ancak aşağıdaki listede bulunan özniteliklerin de HTML elementleriyle kullanılabileceğini unutmayın:</p>

<ul>
<li>onabort</li>
<li>onblur*</li>
<li>oncanplay</li>
<li>oncanplaythrough</li>
<li>onchange</li>
<li>onclick</li>
<li>oncontextmenu</li>
<li>oncuechange</li>
<li>ondblclick</li>
<li>ondrag</li>
<li>ondragend</li>
<li>ondragenter</li>
<li>ondragleave</li>
<li>ondragover</li>
<li>ondragstart</li>
<li>ondrop</li>
<li>ondurationchange</li>
<li>onemptied</li>
<li>onended</li>
<li>onerror*</li>
<li>onfocus*</li>
<li>oninput</li>
<li>oninvalid</li>
<li>onkeydown</li>
<li>onkeypress</li>
<li>onkeyup</li>
<li>onload*</li>
<li>onloadeddata</li>
<li>onloadedmetadata</li>
<li>onloadstart</li>
<li>onmousedown</li>
<li>onmousemove</li>
<li>onmouseout</li>
<li>onmouseover</li>
<li>onmouseup</li>
<li>onmousewheel</li>
<li>onpause</li>
<li>onplay</li>
<li>onplaying</li>
<li>onprogress</li>
<li>onratechange</li>
<li>onreadystatechange</li>
<li>onreset</li>
<li>onscroll*</li>
<li>onseeked</li>
<li>onseeking</li>
<li>onselect</li>
<li>onshow</li>
<li>onstalled</li>
<li>onsubmit</li>
<li>onsuspend</li>
<li>ontimeupdate</li>
<li>onvolumechange</li>
<li>onwaiting</li>
</ul>

<p><em>*Not: *</em>Yıldız ile işaretlenmiş öznitelikler window nesnesine ve document nesnesine uygulandıkları zaman farklı anlamlar taşıdıklarını unutmayın.</p>

<p><em>*Önemli Not: *</em>Butün bu öznitelikler tüm elementlere eklenebilse de hepsinde aynı etkiyi oluşturamayacaktır. Örneğin sadece medya elementleri(video, audio gibi) onvolumechange özniteliğini doğru şekilde kullanabilir.</p>

<p><strong>Kaynaklar:</strong></p>

<ul>
<li><a href="http://www.w3schools.com/html5/html5_ref_globalattributes.asp">W3C Schools</a></li>
<li><a href="http://www.whatwg.org/specs/web-apps/current-work/multipage/elements.html#global-attributes">W3C HTML5 Belirtimi</a></li>
</ul>]]></content:encoded></item><item><title><![CDATA[Açık Web Standartları Neden Önemli #1]]></title><description><![CDATA[<p>Eğer Web sitesi hazırlayan birisiyseniz, temel istediğiniz aslında belli fikirlerin Web aracılığıyla başka insanlara ulaştırılmasıdır. Web, bilgilerin ve fikirlerin yayılmasına bir ortam sunmaktadır. Açık Web standartları(Open Web standards) ise Web’in bu doğrultuda nasıl kullanılacağını belirten bir takım kuralları belirler. Bu kurallar, tek bir kişi ve kurum tarafından belirlenmediği</p>]]></description><link>http://zettlina.com/acik-standartlari-neden-onemli-1/</link><guid isPermaLink="false">899279f8-0170-4b08-b8ae-19a1e6020eed</guid><category><![CDATA[Özgür Web]]></category><category><![CDATA[Web]]></category><dc:creator><![CDATA[C]]></dc:creator><pubDate>Thu, 24 May 2012 08:54:06 GMT</pubDate><content:encoded><![CDATA[<p>Eğer Web sitesi hazırlayan birisiyseniz, temel istediğiniz aslında belli fikirlerin Web aracılığıyla başka insanlara ulaştırılmasıdır. Web, bilgilerin ve fikirlerin yayılmasına bir ortam sunmaktadır. Açık Web standartları(Open Web standards) ise Web’in bu doğrultuda nasıl kullanılacağını belirten bir takım kuralları belirler. Bu kurallar, tek bir kişi ve kurum tarafından belirlenmediği gibi, bilgisayarlar arası iletişimin kurulabilmesi ve sürdürülebilmesi için Web içinde bir birliktelik sağlar.</p>

<p>Bilgisayarınız ile bir siteye bağlanırken, biri sizin bilgisayarınız diğeri ise bağlanmak istediğiniz sitenin bilgisayarı(sunucusu) olmak üzere iki bilgisayarın IP adresi üzerinden belirli veri paketleri gönderilir. Bilgisayarınızın yaptığı isteğe gönderilen cevap, tarayıcınız tarafından yorumlanarak görsel bir şekle bürünür ve etkileşiminize açık hale getirilir. Sunucudan gelen bilginin nasıl değerlendirileceği konusunda bir şablonun olmaması durumunda, size gönderilen bilgiyi anlamanız güçleşecektir. Posta kutunuzdaki Çince bir mektubu anlayabilmek için öncelikle  Çince öğrenmeniz gerekecektir, tabi üçüncü birisini işin içine katmıyoruz. Web standartları tam olarak burada, neyin nasıl değerlendirileceğini belirtiyor. Tarayıcınız web standartlarına göre Web sayfasını anlamlandırıyor. Bir <code>title</code> etiketinin içeriğini tarayıcı penceresinin başlığına yerleştiriyor. <code>script</code> elementinin içeriğini davranışsal bir program kodu olarak değerlendiriyor ve içeriğine göre çalıştırıyor.</p>

<p>Açık Web Standartları, sizlere çeşitli avantajlar sağlıyor. Her şeyden  önce bu standartlar belli bir insanın veya bir grubun belirlediği bir kurallar kümesi olmayıp, çok farklı insanlardan gelen çeşitli fikirlerin tartışılarak, belli bir olgunlaşma sürecinden geçirilerek ve gerekli ölçüde test edilerek belirlenmiş kurallardır. Böylece açık Web standartları belli bir kesime değil kamuya aittir.</p>

<p>Kod verimliliğinizi arttırır. Gereksiz kod tekrarı yapmadan, kullanmak istediğiniz şeyi bir kere yazın ve ihtiyacınız olduğu zaman kullanın.</p>

<p>Kod bakımını kolaylaştırır. Verimli yazdığınız kodu düzenlemek daha kolaydır ve ayrıca web standartları geriye dönük uyumlu bir şekilde gelişir. Bunun anlamı bugün web standartlarına uygun yazdığınız kod, gelecekte de çalışmaya devam edecektir.</p>

<p>Kişilerin kim olduklarından bağımsız bir şekilde her ortamda Web’ten faydalanmalarını amaçlar. İyi bir şekilde hazırlanmış, Web standartlarına uygun bir siteniz görme engelli insanlar tarafından bile kullanılabilir.</p>

<p>Web’in her ortamda uygun şekilde çalışmasını sağlar. Sadece farklı tarayıcılar ve işletim sistemleri arasında değil, farklı cihazlarda da Web sitesinin uygun bir şekilde görüntülenebilmesini ve erişilebilmesini sağlar. Web’e sadece bilgisayarlardan değil, telefonlardan, tabletlerden, televizyonlardan, oyun konsollarından da erişildiği bir dünyada yaşadığımızı düşünürseniz Web standartlarına uygun bir site ile paylaşmak istediklerinizi daha fazla insanla paylaşmış olacaksınız. Eğer bir şirketseniz, hedef kitlenizi genişletmiş olacaksınız.</p>

<p>Arama motorlarında daha üst sıralarda yer almanızı sağlar. Arama motorları web sitenizdeki bilgileri belli zamanlarda tarayarak dizinler. Eğer Web standartlarına uygun bir şekilde sitenizi hazırlamışsanız bunun Google, Bing, Yandex gibi arama motorlarında daha üst sıralarda görünme ihtimali daha yüksektir.</p>]]></content:encoded></item><item><title><![CDATA[Hızlı Bir Şekilde Web Projesine Başlangıç için Araçlar #1]]></title><description><![CDATA[<p>İkinci kere <a href="http://www.ultramems.com">ULTRAMEMS</a> araştırma grubu için bir Matlab kodunu Web’e taşımam gerekti. Yapılan <a href="http://www.eee.metu.edu.tr/~bbayram/Deflection/index.php">hesap makinesi</a> belli parametreleri alıyor ve bunları kullanarak belli üç değeri hesaplıyor ve son olarak bir de bir grafik çiziyor. Bu yazımda bu projede faydalandığım araçları tanıtacağım. </p>

<h2 id="editr">Editör</h2>

<p>Web sayfalarını nasıl hazırladığımı soran bir çok insan</p>]]></description><link>http://zettlina.com/hizli-bir-sekilde-web-projesine-balangic-icin-araclar-1/</link><guid isPermaLink="false">87ddb11e-ea54-4212-bca8-407b37adef85</guid><dc:creator><![CDATA[C]]></dc:creator><pubDate>Tue, 22 May 2012 22:48:57 GMT</pubDate><content:encoded><![CDATA[<p>İkinci kere <a href="http://www.ultramems.com">ULTRAMEMS</a> araştırma grubu için bir Matlab kodunu Web’e taşımam gerekti. Yapılan <a href="http://www.eee.metu.edu.tr/~bbayram/Deflection/index.php">hesap makinesi</a> belli parametreleri alıyor ve bunları kullanarak belli üç değeri hesaplıyor ve son olarak bir de bir grafik çiziyor. Bu yazımda bu projede faydalandığım araçları tanıtacağım. </p>

<h2 id="editr">Editör</h2>

<p>Web sayfalarını nasıl hazırladığımı soran bir çok insan oldu bugüne kadar. FrontPage ve Dreamweaver programlarını ekol olan gören bir nesil çoktan yetişti bile. Ancak herşeyin görsel dünyaya geçtiği bu yıllarda bile kod yazma bağımlılığı olan insanlar klavyeyi bir kere olsun bırakamıyorlar. Ben de kendimi bu ikinci grupta görüyorum. Dolayısıyla FrontPage ve Dreamweaver gibi görsel odaklı da çalışabilen programlardan bahsetmeyeceğim. Buna ek olarak projede kullandığım <a href="http://www.sublimetext.com/2">Sublime Text 2</a>‘nin nasıl kullanıldığından da bu yazıda bahsetmeyeceğim. Sizlere sadece Sublime Text 2’yi isim olarak tanıtacağım. Kafa karıştırmayan ve oldukça anlaşılır bir arabirimi olan bir editör. Eğer dosyanın içine ne yazacağınızı/ekleyeceğinizi biliyorsanız, sizi oldukça tatmin edecek özellikleri bünyesinde barındıyor. Bu özelliklerin tanıtımı ayrıca bir yazının konusu. Bu editöre ücretsiz alternatif olarak <a href="http://notepad-plus-plus.org/download/">NotePad++</a>‘ı deneyebilirsiniz. Notepad++ da Sublime ayarında pratik özelliklere sahip. Üçüncü olarak devasa bir program olan Aptana mevcut. Eclipse tabanı üzerinden geliştirilen <a href="http://www.aptana.com">Aptana</a>, Web programlama dillerini destekleyen kocaman bir IDE. Sahip olduğu onlarca özelliğe rağmen benim deneyimlerimde sürekli hantal kaldığı için kullanmanızı çok fazla öneremiyorum. Ancak yine de ondan verim alabilirsiniz. <a href="http://www.activestate.com/komodo-edit/downloads">Komodo Edit</a> ise kullanılabilecek bir başka editör. Bütün hepsi eklentilerle zenginleştirilebilen editörler ve herhangi birini veya bir başkasını projenize başlarken kullanabilirsiniz.</p>

<h2 id="bohtml5ablonu">Boş HTML5 Şablonu</h2>

<p>Projeye hızlıca başlayabilmek için <a href="http://html5boilerplate.com/">HTML5 Boilprate</a> isimli  içinde ön yüze ait çeşitli iyileştirmeler barındıran boş bir HTML dökümanı açmam gerekti. HTML5 Boilprate, ön yüz geliştiricisi olarak çalışan bir grup insanın çeşitli teknikleri HTML5’e uyumlu boş bir html dosyasında bütünleştirmesi sonucu ortaya çıkan bir proje. Boilprate’in sunduğu boş sayfada tarayıcı özelliği algılamada kullanılan Modenizr’ı, jQuery kütüphanesini, tarayıcının varsayılan CSS’ini sıfırlayıcı CSS kodunu, HTML5’in semantik(anlamsal) etiketlerini desteklemeyen tarayıcıların davranışlarını düzenleyen CSS kodlarını ve daha bir sürü şeyi bulabilirsiniz. Bu cümlede kafanız belki karışmış olabilir. Blogumda bunları tanıtmayı planlıyorum ancak bu yazıda değil. Boilprate’in sunduğu çoğu özelliğe projenin ihtiyacı olmadığı için sade bir sürümünü <a href="http://www.initializr.com/">Initializr</a> sitesinden edindim. Mesela Google Analytics kodu gerekmiyordu.</p>

<h2 id="grafikizimi">Grafik Çizimi</h2>

<p>Bir Web uygulamasıyla grafiğin nasıl çizileceği konusunda çok bir fikir sahibi değildim. Bugüne kadar denk geldiğim sitelerde her zaman Flash kullanılmıştı ama Flash bilmediğim için bunu Web’e uygun bir şeyle halletmem gerektiğini düşündüm. Web’te kısa bir araştırma sonucunda <a href="http://www.highcharts.com/">High Chart</a> isimli bir Javascript framework’ü(bunun iskelet, sistem karşılıkları var) buldum. Bu sistem <a href="http://tr.pardus-wiki.org/SVG">SVG</a> görüntüleme teknolojisini kullanıyor. Internet Explorer’ın eski sürümleri için ise VLM’e geçiş yapıyor. SVG, ölçeklenebilir grafikler. Yani biz bunları ne kadar büyütürsek büyütelim vektör tabanlı oldukları için herhangi bir çözünürlük deformasyonuna uğramıyorlar. Diğer yandan jpeg gibi fotoğraf verisi saklamaya da elverişli değiller. SVG konusunda Türkçe pek bilgi bulunmamakta ve denk geldiğim Türkçe sitelerde de çok büyük oranda kullanılmamakta. Internet Explorer’ın SVG’yi oldukça geç desteklemeye başlaması, SVG’nin diğer resim biçimlerine göre oluşturulmanın nispeten zor olması ve projenin gerçekten SVG’ye ihtiyaç duymaması veya SVG’den bil haberdar olunması, SVG’nin yaygın olarak kullanılmasını engellediği kanaatindeyim. Ancak <a href="http://upload.wikimedia.org/wikipedia/commons/6/6b/Bitmap_VS_SVG.svg">SVG görselleri</a>ni Vikipedi sitesinde görebilmeniz mümkündür.</p>

<p>Bir sonraki yazıda görüşmek dileğiyle.</p>]]></content:encoded></item><item><title><![CDATA[Opera Yeni Tema Sistemi]]></title><description><![CDATA[<p>Opera 12 ile beraber, Opera yeni hafif tema sistemini bünyesine dahil etti. Bu sayede çok basit değişiklikler, eskisi gibi yığınla yazılmış tema dosyasını kurcalamadan kolayca halledilebilecek. Bu yeni tema sisteminin nasıl kullanılacağına dair <a href="http://dev.opera.com/author/chrismills">Chris</a>‘in dev.Opera’da <a href="http://dev.opera.com/articles/view/operas-lightweight-themes/">bir yazısı</a> mevcuttu. Bugün bu yazıyı Türkçeye çevirdim yazı yayınlandıktan sonra <a href="http://dev.opera.com/articles/view/operanin-hafif-temalari/">Opera’</a></p>]]></description><link>http://zettlina.com/opera-yeni-tema-sistemi/</link><guid isPermaLink="false">3070415d-0d5d-43f1-8355-9a456d7f5266</guid><category><![CDATA[Opera]]></category><category><![CDATA[tarayıcılar]]></category><dc:creator><![CDATA[C]]></dc:creator><pubDate>Sat, 12 May 2012 12:16:58 GMT</pubDate><content:encoded><![CDATA[<p>Opera 12 ile beraber, Opera yeni hafif tema sistemini bünyesine dahil etti. Bu sayede çok basit değişiklikler, eskisi gibi yığınla yazılmış tema dosyasını kurcalamadan kolayca halledilebilecek. Bu yeni tema sisteminin nasıl kullanılacağına dair <a href="http://dev.opera.com/author/chrismills">Chris</a>‘in dev.Opera’da <a href="http://dev.opera.com/articles/view/operas-lightweight-themes/">bir yazısı</a> mevcuttu. Bugün bu yazıyı Türkçeye çevirdim yazı yayınlandıktan sonra <a href="http://dev.opera.com/articles/view/operanin-hafif-temalari/">Opera’nın Hafif Temalar</a>ı  bölümünden erişilebilir olacak.</p>]]></content:encoded></item><item><title><![CDATA[TRT Spor ve Opera Sorunu]]></title><description><![CDATA[<p><a href="http://www.operaturkiye.net/trtspor-sayfasi-ve-opera-ile-icerik-goruntuleme-sorunu/">Bu sorun</a>u daha evvelce gerekli yerlere bildirmiş olmama ve <a href="http://www.operaturkiye.net/trtspora-tesekkurler/">bir kere düzeltilmiş olması</a>na rağmen bugün sorun tekrar devam etmektedir. Sorunun temel sebebi Web standartlarının doğru şekilde kullanılmaması. <a href="http://my.opera.com/ODIN/blog/">Opera ODIN</a>‘de, Bruce bu konuyla ilgili epey <a href="http://my.opera.com/ODIN/blog/2012/05/01/another-great-web-opening-goal-for-opera-turkiye-2">bilgilendirici bir yazı yazmış</a> aslında. CSS’teki <code>content</code> özelliğini, <abbr title="pseudo element">sözde elementler</abbr>in dışında</p>]]></description><link>http://zettlina.com/trt-spor-ve-opera-sorunu/</link><guid isPermaLink="false">1817079f-1dc0-4370-ac68-e982f66c3b26</guid><category><![CDATA[CSS]]></category><category><![CDATA[Opera]]></category><category><![CDATA[Özgür Web]]></category><category><![CDATA[Web]]></category><dc:creator><![CDATA[C]]></dc:creator><pubDate>Sat, 12 May 2012 10:46:54 GMT</pubDate><content:encoded><![CDATA[<p><a href="http://www.operaturkiye.net/trtspor-sayfasi-ve-opera-ile-icerik-goruntuleme-sorunu/">Bu sorun</a>u daha evvelce gerekli yerlere bildirmiş olmama ve <a href="http://www.operaturkiye.net/trtspora-tesekkurler/">bir kere düzeltilmiş olması</a>na rağmen bugün sorun tekrar devam etmektedir. Sorunun temel sebebi Web standartlarının doğru şekilde kullanılmaması. <a href="http://my.opera.com/ODIN/blog/">Opera ODIN</a>‘de, Bruce bu konuyla ilgili epey <a href="http://my.opera.com/ODIN/blog/2012/05/01/another-great-web-opening-goal-for-opera-turkiye-2">bilgilendirici bir yazı yazmış</a> aslında. CSS’teki <code>content</code> özelliğini, <abbr title="pseudo element">sözde elementler</abbr>in dışında kullanılabileceğine dair bir bilgi CSS 2.1 önergelerinin hiç birinde bulunmamakta. Ancak CSS3 ile beraber normal elementlerde de aynen sözde elementlerdeki gibi <code>content</code> özelliğini kullanabiliyoruz. Bu desteği sağlayan tek tarayıcı şuan Opera olduğu için içeriğin boş gösterilme sorunu bir tek Opera’da meydana geliyor. Diğer tarayıcıların yakın bir gelecekte bu özelliğin kapsamını genişletecek olduğunu düşünürseniz TRT Spor’un sitesi bir gün mutlaka ama mutlaka bu sorunu gidermek için o kodu kaldırmak durumunda kalacak. Aşağıdaki kodu Opera ve diğer tarayıcılarda deneyin. Sadece Opera’da içeriğin görüntülenmediğini göreceksiniz. TRT Spor’daki durum da aynı şekildedir.  </p>

<iframe frameborder="0" height="240" src="http://jsfiddle.net/greench/mfG5G/1/embedded/result,html,css" style="width: 100%; height: 300px;" width="320"></iframe>]]></content:encoded></item><item><title><![CDATA[Kernek Turizm Online Bilet Menüsü ve Opera Sorunu]]></title><description><![CDATA[<p><a href="http://www.kernekturizm.com.tr/">Kernek Turizm</a>, Malatya merkezli bir seyahat firması. Memlekete giderken kendilerinden bilet alırdım bir zamanlar. Şimdi online işlemler bölümü Opera’da düzgün çalışmıyor.</p>

<p>Gitmek istediğiniz tarihi ve yönü belirledikten sonra “Bilet Al” düğmesi Opera’da işlemiyor. Aşağıdaki javascript kodu “Bilet Al” düğmesine tıklandığında gerekli işlemlerin yapılmasını engelliyor. Engellemenin sebebi düzgün yazılmamış</p>]]></description><link>http://zettlina.com/kernek-turizm-online-bilet-menusu-ve-opera-sorunu/</link><guid isPermaLink="false">a824f2f8-6595-4441-a9d7-261757befbd2</guid><category><![CDATA[JavaScript]]></category><category><![CDATA[Özgür Web]]></category><category><![CDATA[Web]]></category><dc:creator><![CDATA[C]]></dc:creator><pubDate>Fri, 11 May 2012 23:08:37 GMT</pubDate><content:encoded><![CDATA[<p><a href="http://www.kernekturizm.com.tr/">Kernek Turizm</a>, Malatya merkezli bir seyahat firması. Memlekete giderken kendilerinden bilet alırdım bir zamanlar. Şimdi online işlemler bölümü Opera’da düzgün çalışmıyor.</p>

<p>Gitmek istediğiniz tarihi ve yönü belirledikten sonra “Bilet Al” düğmesi Opera’da işlemiyor. Aşağıdaki javascript kodu “Bilet Al” düğmesine tıklandığında gerekli işlemlerin yapılmasını engelliyor. Engellemenin sebebi düzgün yazılmamış tarayıcı tanımlama kodu. Opera, Firefox olarak tanımlanmadığı için Firefox’un çalıştırdığı kodları çalıştırmıyor. Aşağıda sorunlu olan kodu görebilirsiniz.  </p>

<iframe frameborder="0" height="240" src="http://jsfiddle.net/greench/UYQnp/embedded/js,result/" style="width: 100%; height: 300px;" width="320"></iframe>

<p>Yukarıdaki şey sorunun temel kaynağı olarak görülebilir ancak gözden kaçırılmaması gereken asıl nokta <code>__aspxFirefox</code> ve <code>__aspxBrowserVersion</code> değişkenlerinin defalarca ve defalarca kullanılması ve her seferinde yukarıdaki gibi yanlış kodun Opera üzerinde çalıştırılması durumu var. Site tercihlerinden Firefox olarak görün seçeneğinin işaretlenmesi durumunda Opera herhangi bir problem olmadan web sayfasını çalıştırmayı başarıyor. Bu da site üzerinde bir tarayıcı yönlendirmesi yapıldığının açık bir göstergesi.</p>]]></content:encoded></item><item><title><![CDATA[CSS Ön Ekleri ve Yarattığı Sorunlar]]></title><description><![CDATA[<p>CSS ön ekleri, CSS’teki özellik isminin başında kullanılan ön eklerdir.  Tarayıcı üreticileri, tam olgunlaşmamış CSS teknolojilerini ya da tam olarak uygulamaya koyamadıkları CSS teknolojileri için bu şekilde bir kullanım imkanı sunarlar. Sağlanan bu destek, css teknolojisinin CSS önergelerini hazırlayan insanlar dahil herkesçe test edilmesine imkan sağlar. Test sonuçlarına göre</p>]]></description><link>http://zettlina.com/css-on-ekleri-ve-yarattigi-sorunlar/</link><guid isPermaLink="false">a736b222-c2b9-41b3-a6ef-6d689f39f376</guid><category><![CDATA[CSS]]></category><category><![CDATA[Özgür Web]]></category><category><![CDATA[Web]]></category><category><![CDATA[webkit]]></category><dc:creator><![CDATA[C]]></dc:creator><pubDate>Fri, 11 May 2012 15:07:11 GMT</pubDate><content:encoded><![CDATA[<p>CSS ön ekleri, CSS’teki özellik isminin başında kullanılan ön eklerdir.  Tarayıcı üreticileri, tam olgunlaşmamış CSS teknolojilerini ya da tam olarak uygulamaya koyamadıkları CSS teknolojileri için bu şekilde bir kullanım imkanı sunarlar. Sağlanan bu destek, css teknolojisinin CSS önergelerini hazırlayan insanlar dahil herkesçe test edilmesine imkan sağlar. Test sonuçlarına göre önerge üzerinde değişikliğe gidilerek daha sorunsuz bir önerge elde edilmesi sağlanır.</p>

<p>Bugünkü popüler tarayıcılara baktığımızda, 4 farklı grup görülmektedir. Internet Explorer –  Trident, Opera – Presto, Firefox – Gecko, Chrome ile Safari – Webkit render motorlarını kullanmaktalar. Arkasındaki destek açısından Webkit, halen taslak aşamasında olan web teknolojilerini hızlı bir şekilde -webkit ön eki ile beraber herkesin kullanımına açıyor. Yeni CSS teknolojilerinin yarattığı yeni dünyayı herkese bir an önce sunmak isteyen web sitesi geliştiricileri ise bu yenilikleri en kısa sürede kullanmaya başlıyorlar. Bunun Web’in ilerlemesi için iyi bir şey olması gerekiyor ancak geliştiriciler geriye uyumlu kod hazırlamayı unuttukları gibi CSS kodunun standart, ön eksiz, halini de eklemiyorlar. Sadece bir render motorunun ve onun da en son sürümünün sunduğu özelliklere sahip olmayan insanlar, web sitesini plananan şekilde görüntüleyemiyor. Bazen ise kullanıcının tarayıcısı o CSS teknolojisine destek verse bilegerekli  direktifi almayan tarayıcı web sitesini yine planlanan şekilde görüntülemeyecek. Sonuç olarak o siteden faydalanmanız için tarayıcı değişikliği yapmanız gerekecek.</p>

<p>Örnek vermek gerekirse, -webkit-border-radius: şeklinde kullanılan bir css özelliği, sadece bu şekilde kullanıldığı için webkit tabanlı olmayan tarayıcılarda kullanıcı deneyiminin düşmesine sebep olacaktır. -webkit-border-radius: yanında ek olarak border-radius: şekildeki standartlaştırılmış kod da kullanılırsa problem olmayacaktır.</p>]]></content:encoded></item></channel></rss>