Bir AMP HTML web sitesi oluşturmaya çalışıyorum (bkz. https://www.ampproject.org) Ancak, duyarlı bir hamburger menüsü oluşturmanın nasıl bir yolunu bulamıyorum? Javascript'e izin verilmiyor ve bunun için AMP Bileşenleri mevcut değil mi?AMP HTML'ye duyarlı bir hamburger menüsü nasıl oluşturulur
cevap
Bu, büyük çaplı kesiciler olmadan şu anda mümkün değildir.
özellik isteği hata tümüyle izleyin: Bir :target
pseudoclass kullanımı ile bu başardık https://github.com/ampproject/amphtml/issues/827
.
HTML
#slide-in-menu {
transform: translateX(-100%);
transition: transform .2s ease-in-out;
... additional required styles ...
}
#slide-in-menu:target {
transform: translateX(0);
}
Ben de bunu yaptım, özellikle de çünkü: '' fokus' sözde-sınıfının, bazı masaüstü tarayıcılarında gerçekten de (Chrome'da en azından) ortaya çıkan bir nedensellik paradoksu nedeniyle çalışmamasıdır. '': '' hedef 'çok daha etkilidir ve aynı zamanda (burada keşfettiğim gibi) atlı karıncaları için de iyi çalışır. (https://dev.amdouglas.com/amphtml-examples/nojs-carousel/#div1) – amdouglas
Sen ile yapabilirsiniz
<nav id="slide-in-menu">
...nav menu content...
</nav>
<section class="content-section">
<a href="#slide-in-menu">Hamburger Icon</a>
</section>
CSS: odak sözde sınıfının. Canlı bir örnek için https://fresnobee.relaymedia.com/amp/news/local/education/article61889207.html'a bir göz atın (www.washingtonpost.com da bu şekilde yapıyor). Ya da <amp-sidebar>
etiketinin yayınlanmasını bekleyebilirsiniz.
kod
gibi<a id="burger" tabindex="0">☰</a>
<div id="burgerCancel" tabindex="0">☰</div>
<div id="burgerMenu">
<ul>
<li><a href="/news/local/#navlink=ampnav">Local News</a></li>
<li><a href="/sports/#navlink=ampnav">Sports</a></li>
</ul>
</div>
<button id="burgerMask"></button>
ve css görünüyor
#burger:focus ~ #burgerMenu {
transform: translateY(0px); /* or whatever other way you want it to appear */
}
#burgerMask {
position: fixed;
top: 0;
left: 0;
width: 100vw;
height: 100vh;
background: #000;
z-index: 998;
border: 0;
opacity: 0;
transition: opacity 250ms cubic-bezier(0, .67,0,.67);
pointer-events: none; /*this is important */
}
#burger:focus ~ #burgerMask {
pointer-events: auto;
opacity: 0.7;
display: block;
}
Canlı Örnek çalışmıyor, menü maddesini tıkladığınızda menü kapanıyor ve URL'ye gitmiyor, örnekte kod aynı şeyi yapıyor. Bu kodu doğru bir şekilde çalışmasını sağladın mı? –
AMP şimdi amp-sidebar bileşenini kullanarak menü için desteği vardır.
- 1. Duyarlı menü oluşturma (Hamburger menüsü)
- 2. Bir diziden Hamburger menüsü
- 3. Bootstrap Hamburger Menüsü Bağlantıları Gösterilmiyor
- 4. Hamburger menüsü yeni etkinlikte okun döndürme
- 5. Malzeme Tasarımı Lite hamburger menüsü başlıkta bulunmuyor
- 6. FloatingActionButton menüsü nasıl oluşturulur
- 7. HTML5 Tuval - Bağlam Duyarlı Menüsü
- 8. Sencha Ext js 6 ile bir slayt menüsü nasıl oluşturulur?
- 9. HTML, CSS, JS duyarlı açılır menüsü
- 10. Yarım pencere görünüm menüsü nasıl oluşturulur?
- 11. Css3'te eğri stili menüsü nasıl oluşturulur?
- 12. Durum çubuğunda bağlam menüsü nasıl oluşturulur?
- 13. XML dosyası kullanarak Bağlam Menüsü nasıl oluşturulur?
- 14. bootstrap - 'mobile (hamburger)' menüsünü kapatın
- 15. Sadece CSS ile duyarlı bir daire nasıl oluşturulur?
- 16. CSS Kullanarak Duyarlı Bir Yatay Düzen Nasıl Oluşturulur?
- 17. Java dize & ile '&' değiştirin fakat & amp & için;
- 18. HamBurger Icon in ActionBar
- 19. "Hamburger Düğmesini Değiştir"
- 20. hamburger simgesi, componentHandler.upgradeDom();
- 21. ActionBar hamburger simgesinin rengini nasıl değiştirebilirim?
- 22. JS dahil bir JSoup Belgesi nasıl oluşturulur?
- 23. Xcode'ta hızlı bir şekilde yapılan bir spritekit oyununun ana menüsü nasıl oluşturulur?
- 24. handlebars.js alt menüsü oluşturma
- 25. Hamburger Menü WordPress Yerinde Çalışmıyor
- 26. Nasıl görüntülenir, amp & in HTML?
- 27. bir sayfaya duyarlı yapmak
- 28. Bir primefaces breadcrumb dinamik nasıl oluşturulur?
- 29. Herhangi bir pencerenin içerik menüsü nasıl açılır?
- 30. Bulucuya nasıl bir sağ tıklama menüsü ekleyebilirim
AMP kullanarak çok sayfalı bir web sitesi oluşturmaya mı çalışıyorsunuz? AMP'nin tasarladığı kullanım durumu değil. Gördüğüm/inşa ettiğim örnekler 'web siteleri' yerine 'sayfalar' - AMP olmayan bir web sitesindeki tek tek makalelerin görünümlerini basitleştiriyorlar. – MatCarey
@MatCarey Peki amp sayfalarını nasıl yedekleyebiliriz? Tüm ürünlerde amp ayrıntıları sayfası yapmak için ayrı sayfalar yapmalı mıyız? –