/ / Предотвратяване на FOUC в контекста на уебсайта на Kentico 10 - zurb-foundation, kentico

Предотвратявайте FOUC в контекста на уебсайта на Kentico 10 - zurb-foundation, kentico

Фондация Zurb препоръчва добавянето на class = "no-js" към HTML кода на страницата за да предотвратите възникването на флаш с нестимулирано съдържание (FOUC).

Използваме Kentico CMS. Търся начина Kentico за добавяне на класа към html елемент в главната страница. Използваме порталния двигател на CMS.

За какво вървим <html class="no-js"

Склонни да се върнат в ASP.NET, ако не съществува по-достъпен начин, използвайки макросите на Kentico или неговия API.

Отговори:

3 за отговор № 1

В шаблона на портала на главната страница можете да добавите такъв код, за да направите тази промяна:

<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
if (CurrentDocument != null)
{
CMS.UIControls.ContentPage page= this.Page as CMS.UIControls.ContentPage;
if (page != null)
{
page.XmlNamespace += " class="no-js"";
}
}
}
</script>

Можете също така да променяте страницата CMSPagesPortalTemplate.aspx, но тя не се поддържа или препоръчва от Kentico, тъй като обикновено нарушава пътя за надстройване.


1 за отговор № 2

Най-бързият начин, от който знам, е да променя CMSPagesPortalTemplate.aspx за да добавите класа си там.

<%@ Page Language="C#" AutoEventWireup="true" Inherits="CMSPages_PortalTemplate" ValidateRequest="false" MaintainScrollPositionOnPostback="true" EnableEventValidation="false" Codebehind="PortalTemplate.aspx.cs" %>

<%=DocType%>
<html <%=XHtmlNameSpace%> <%=XmlNamespace%> class="no-js">
<head id="head" runat="server" enableviewstate="false">
...

0 за отговор № 3

"No-js" е стандартната стойност. Ако наистина вашият браузър поддържа JavaScript, класът "не-е" ще бъде премахнат от двигателя Modernizr.

Modernizr е библиотека с JavaScript и ще провери възможностите на браузъра и ще актуализира html class = "".

Например, ако браузърът ви поддържа технологията flexbox, класът Flexbox ще бъде добавен към списъка с класове html. В противен случай ще се добави клас "без".

По-късно, когато се използва CSS framework (Bootstrap или Foundation), някои стратегии могат да бъдат използвани за емулиране на липсваща функция.


Свързани въпроси


Коментари (0)

Добави коментар