这是我的情况:我是一名严格的前端人员,他被要求在使用IE8时遇到背景问题的ASP网站(http://www.irvins.com:8080)提供帮助。以前,网站上的任何内容都没有在ie8下正确显示,我现在已经部分工作并且看起来大致相同(减去这里和那里的几个圆角)。但是在“search_results.asp”页面上的ie8下,背景显示不正确(这些是从左侧导航栏中的产品链接生成的)。
值得注意的是,我正在努力对样式进行分类,但此时已有3-4人在开发网站 - 解释了大部分问题。这个问题本质上可能非常愚蠢。再一次,我不是一个交易开发者,但我真的想学习和理解这个问题的根源,这就是为什么我转向这里的专家。
现在,有一个破坏的标记和另一个开发人员(ASP /后端人)正在处理的一些问题。换句话说,这个网站仍处于开发阶段,但我只是想了解这个问题的来源,所以我可以回过头来清理这个凌乱的代码中的样式。
解决问题...
在IE8下,当从侧边栏向左选择任何产品类别选项时(使用“search_results.asp / ...”)页脚填充页面的大部分,然后重新填充整个背景比头部下面的一小块白色。我对此感到困惑,因为查看代码时,正在使用正确的样式。在关闭多种样式时,我仍然无法确定要在其他页面上复制的确切问题。
此外,在其他当前浏览器(和IE9)下,我无法复制问题。如果您导航到IE8中的任何其他页面(主页,查看购物车,客户服务,经销商定位器等等),问题就会消失,IE8看起来几乎和其他浏览器一样好。同样,问题似乎与侧栏上的所有导航所使用的“search_results.asp”文件隔离。
见下图:
此页面的“search_results.asp”代码可能会导致问题吗?
<%option explicit %>
<!-- #include file="common/settings.asp" -->
<!-- #include file="common/navigation.asp" -->
<!-- #include file="common/product_image.asp" -->
<%
dim product, i
dim count : count = 0
dim objFSO : set objFSO = Server.CreateObject("Scripting.FileSystemObject")
dim objPage : set objPage = CreatePageHandler("SearchResults")
dim arrCurrentCategory : arrCurrentCategory = null
dim arrSubCategories : arrSubCategories = null
dim isSubCategoryRequest : isSubCategoryRequest = trim(request("category")) <> ""
if trim(Request("category")) <> "" then
objPage.categoryKeyword = "" & findCategoryKeyword(trim(Request("category")))
end if
objPage.process()
if isSubCategoryRequest then
breadCrumbHtml = getCategoryPath(request("category"))
arrCurrentCategory = findCategory(request("category"))
else
breadCrumbHtml = "<li>Search results for " & Server.HtmlEncode(request("keyword")) & "</li>"
end if
if objPage.SearchResults.Items.Count > 0 then
' Upsell 5 - full price
' Upsell 6 - P4 price if product.price = 0
call getUpsellInfoForProducts(objPage.SearchResults, array(array("5" , "UpsellA"), array("6" , "UpsellB")))
end if
%>
<!-- #include file="header_.asp" -->
<article id="app_body">
<div class="row">
<!-- Sidebar -->
<aside id="app_sidebar" class="one column" ui-scroll-window="#app_content">
<!-- #include virtual ="leftnav.asp" -->
</aside>
<!-- Main Content Area -->
<section id="app_content" class="five columns">
<% if not isnull(arrCurrentCategory) then %>
<header class="category">
<% if ubound(arrCurrentCategory) > 4 then %>
<figure>
<img src="<%=arrCurrentCategory(5)%>" alt="<%=arrCurrentCategory(1)%>" />
</figure>
<% else %>
<figure>
<div style="height:40px">
<img src="img/spacer.gif" alt="" />
</div>
</figure>
<% end if %>
<h2><%=arrCurrentCategory(1) %></h2>
</header>
<% if ubound(arrCurrentCategory) > 5 then %>
<p><%=arrCurrentCategory(6) %></p>
<% end if %>
<% end if %>
<%
if isSubCategoryRequest then
arrSubCategories = getSubCategories(request("category"))
if not isnull(arrSubCategories) then%>
<ul class="product-grid four-up">
<!---------------------------------------------
Foreach product in category loop start
Should be 4 items, filtered however you like
----------------------------------------------->
<% for i = 0 to UBound(arrSubCategories) %>
<li>
<div class="item">
<figure class="item-thumb">
<a href="search_results.asp?category=<%=Server.UrlEncode(arrSubCategories(i)(0))%>&top_category_id=<%=Server.UrlEncode(request("top_category_id"))%>"><img src="img/menu/<%=arrSubCategories(i)(0)%>.jpg" width="165" height="165" border="0" alt="<%=arrSubCategories(i)(1)%>"></a>
</figure>
<h4 class="item-name">
<a href="search_results.asp?category=<%=Server.UrlEncode(arrSubCategories(i)(0))%>&top_category_id=<%=Server.UrlEncode(request("top_category_id"))%>"><%=arrSubCategories(i)(1)%></a>
</h4>
</div>
</li>
<% next%>
<!-----------------------------------------
End ForEach Products loop
------------------------------------------->
</ul><!-- end .products -->
<% end if
end if
%>
<% if objPage.SearchResults.ItemCount > 0 then %>
<% if objPage.SearchResults.PageCount > 1 then %>
<header class="page-options"><%=getPageNavigator("search_results.asp?" & iif(request("category") <> "", "category=" & Server.UrlEncode(Request("category")) & "&top_category_id=" & Server.UrlEncode(request("top_category_id")),"keyword=" & Server.UrlEncode(Request("keyword"))), objPage.SearchResults.PageNo, objPage.SearchResults.PageCount)%></header>
<% end if%>
<ul class="product-grid four-up">
<!---------------------------------------------
Foreach product in category loop start
Should be 4 items, filtered however you like
----------------------------------------------->
<% for each product in objPage.SearchResults %>
<li>
<div class="item">
<figure class="item-thumb">
<a href="product_detail.asp?item_no=<%=Server.UrlEncode(product.ItemNo)%>"><img src="<%=getProductImageName(product.Edp, "TN")%>" width="165" height="165" border="0"></a> </figure>
<dl class="item-price">
<dt>Price:</dt>
<% if trim(product.upsellA) <> "" then %>
<dd class="full-price"><span><%=trim(product.upsellA)%></span></dd>
<% end if %>
<% if product.price = 0 and trim(product.upsellB) <> "" then %>
<dd class="sale-price"><%=product.upsellB%></dd>
<% else %>
<dd class="sale-price">$<%=formatnumber(product.price,2)%></dd>
<% end if %>
</dl>
<h4 class="item-name clear">
<a href="product_detail.asp?item_no=<%=Server.UrlEncode(product.ItemNo)%>">
<%=product.description%>
</a>
</h4>
</div>
</li>
<% next %>
<!-----------------------------------------
End ForEach Products loop
------------------------------------------->
</ul><!-- end .products -->
<% if objPage.SearchResults.PageCount > 1 then %>
<footer class="page-options"><%=getPageNavigator("search_results.asp?" & iif(request("category") <> "", "category=" & Server.UrlEncode(Request("category")) & "&top_category_id=" & Server.UrlEncode(request("top_category_id")),"keyword=" & Server.UrlEncode(Request("keyword"))), objPage.SearchResults.PageNo, objPage.SearchResults.PageCount)%></footer>
<% end if%>
<% elseif isnull(arrSubCategories) then %>
<div align="center">
<br><br><br>
We did not find anything matching your request. <br><br>Please call us at 800-800-4846 Mon-Sat 9am-5pm ET <br>and we may be able to help!<br><br>
<a href="javascript:history.go(-1)"><img src="img/btn_back.gif" border="0"></a>
</div>
<br><br><br><br><br><br><br><br><br><br><br><br><br>
<% end if %>
</div><!-- end .row -->
</section>
</article>
<!-- #include file="footer_.asp" -->
<%
set objFSO = nothing
set objPage = nothing
%>