トピック:
ドラッグ/ドロップ値を受け入れるためにいくつかのdivを作成し、入力のように見えるようにスタイルを設定しています。
Firefoxではすべてが美しくレンダリングされます。
ただし、Chromeでは、境界線とボックスシャドウが正しくレンダリングされません。(私はChm v.24にいます、ところで)
目標:
何よりも、私はそれが機能することを望んでいます。
しかし...私は私がもっと良いことをする方法についての提案を得るのと同じくらい幸せです:)
注:
これはオフィス内アプリ用です。ここで公式にサポートされているブラウザはFireFoxとChromeだけなので、すべてのブラウザ間の互換性は間違いなく素晴らしいですが、私はこれら2つにコーディングするだけで済みます。
コード: ここjsFiddleにも表示されます
/** html **/
<section id="dragged-drop-zone" >
<div class="look-like-input textfield" contenteditable></div>
<br />
<div class="look-like-input textarea" contenteditable></div>
</section>
。
/** css **/
.look-like-input{
background-color: white;
border: 1px solid #CCC;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
padding: 0.25em 0.5em;
min-height: 1.5em;
}
.look-like-input.textfield{
appearance: field;
-moz-appearance: textfield;
-webkit-appearance: textfield;
}
.look-like-input.textarea{
appearance: field;
-moz-appearance: textfield-multiline;
-webkit-appearance: textarea;
overflow: auto;
resize: both;
min-height: 3.5em;
}
.look-like-input:focus{
border: 1px solid #69F;
-moz-box-shadow: 0 0 5px 2px rgba(0, 100, 255, 0.15);
-webkit-box-shadow: 0 0 5px 2px rgba(0, 100, 255, 0.15);
box-shadow: 0 0 5px 2px rgba(0, 100, 255, 0.15);
}
#dragged-drop-zone{
border: 1px solid #666;
-webkit-border-radius: 1em;
-moz-border-radius: 1em;
border-radius: 1em;
padding: 1em;
}
本当にありがとう!