!DOCTYPE html销毁页面

时间:2016-04-18 15:40:10

标签: html5 doctype xhtml-1.0-strict

!DOCTYPE html我有一个奇怪的错误。

当我尝试使用HTML5 Doctype时,我的页面看起来很奇怪。所有脚本看起来都没有正确关闭。

但是当我改为!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"时,一切看起来都不错。

我不明白页面结构有什么问题以及为什么它只发生在HTML5上。

2 个答案:

答案 0 :(得分:2)

HTML5完全删除并重写了许多HTML4元素(XHTML 1.0所基于的)。如果网站主要使用XHTML 1.0进行编码,那么您不能只是切换到HTML5并假设事情不会中断。

您最好的选择是在https://validator.w3.org通过W3C的HTML验证程序运行转换后的doctype代码,并查看它生成的错误和警告。这应该让你知道为什么事情没有按照你想要的方式运作。

答案 1 :(得分:0)

谢谢你们的帮助!

我找到了解决方法。在我的例子中,错误在一个扩展中,在观察者中使用 protected void onPostExecute(final String result) { m_ProgressView.setVisibility(View.GONE); try { m_oResponseobject = new JSONObject(result);// getting response from server JSONArray posts = m_oResponseobject.optJSONArray("dealList"); for (int i = 0; i < posts.length(); i++) { JSONObject post = posts.getJSONObject(i); item = new CDealAppDatastorage(); item.setM_szHeaderText(post.getString("dealname")); item.setM_szsubHeaderText(post.getString("dealcode")); item.setM_n_Image(m_n_FormImage[i]); s_oDataset.add(item); } // LoadMore button Button btnLoadMore = new Button(getActivity()); btnLoadMore.setText("LOAD MORE DEALS"); btnLoadMore.setBackgroundResource(R.drawable.button_boarder); btnLoadMore.setTextAppearance(getActivity(), android.R.style.TextAppearance_DeviceDefault_Small); btnLoadMore.setTextColor(Color.WHITE); btnLoadMore.setGravity(Gravity.CENTER); // Adding Load More button to lisview at bottom if(!s_oDataset.size()==0) { m_ListView.addFooterView(btnLoadMore); } m_oAdapter = new CDealAppListingAdapter(getActivity(), s_oDataset);// create adapter object and add arraylist to adapter m_ListView.setAdapter(m_oAdapter);//adding adapter to recyclerview m_oAdapter.notifyDataSetChanged(); } 方法。在渲染之前,此方法已解析$dom->saveXML()并删除/替换HTML输出。