2010-07-08 40 views
1

我有一個Web應用程序,用戶可以在其中編輯其個人資料信息。這被描述成包含現有值輸入字段一個正常的網頁表單:Safari中的奇怪問題:無法從輸入字段中選擇文本

<form action="<snipped>" method="post" accept-charset="UTF-8" id="frmEditUser"> 

<fieldset> 

<p> 
<label for="username">Username</label> 
<input type="text" name="username" id="username" value="<?= $uname ?>" size="30" title="must be unique" size="30" /> 
<label for="username" generated="true" class="error">*<?= form_error('username'); ?></label> 
</p> 

</fieldset> 
</form> 

還有更多的領域,但這種簡化的標記表明,我做什麼不尋常的。在Safari和Chrome(Windows 7)中,當嘗試選擇這些字段中的現有值時,我會遇到一些非常奇怪的行爲:

當我從左到右選擇時,所選文本按預期突出顯示。 當我將光標放在字段的末尾並從右向左選擇時,釋放鼠標按鈕時,撤消選擇並且光標再次位於字段的末尾

此問題發生在我的應用程序的所有輸入字段和textareas,但只在Safari和Chrome中出現。我認爲這可能是一個JavaScript問題,但是當禁用所有JavaScript時問題仍然存在。禁用所有CSS會導致問題消失。

所以問題出在我的CSS。我禁用了所有與表單或表單元素有關的CSS規則,但問題仍然存在。

我希望有人遇到同樣的問題,這是奇怪的機會?

更新:問題更加細化。這似乎只發生如果我從右到左選擇,並在這個過程中懸停退出左邊的領域。在外部點擊時不會退出,在懸停時退出,同時仍然按住鼠標按鈕以便選擇。

更新二:我發現了問題的根源。從右到左進行選擇時發生,並在此選擇過程中退出表單元素,而不是字段。我在表單元素周圍添加了一個紅色邊框。只要我在左邊退出,我所做的選擇就消失了。如果我將填充添加到左側的表單元素,則表明只要留在表單元素中,選擇就會保留。

不過,我想一個奇怪的問題來解決:(

回答

1

我看了你的問題,並決定檢查我的網站在Chrome中,發現了同樣的問題。去我的網站www.futurekode.com和下井聯繫表格,並輸入您的姓名和電子郵件,嘗試選擇文本。

對礦井,它只發生在第二個輸入字段(電子郵件一個),而不是文本區域無論是。

我發現,添加顯示:塊到輸入字段修復它在鉻,但不safari:/

非常奇怪

+0

謝謝你檢查這個。我嘗試了這種修復方法,但它在任何瀏覽器中都不適用於我。奇怪的是,我沒有在其他許多網站上遇到這個問題,所以一定是你和我正在使用某種CSS組合來觸發這種默默無聞。還沒有發現究竟是什麼原因造成的。 – Ferdy 2010-07-09 07:47:36

相關問題