The following trick lets you add shortcut keys to resize textareas. By pressing Alt and the cursor keys, you can resize a textarea to fit the text you want to add. One might use this in Mozillazine forums or a WebMail system. First, add the following lines to userContent.css in your profile's chrome directory:

textarea {
  -moz-binding: url('resource:///res/builtin/myHTMLBindings.xml#textAreas');
}

Now, create a file res/builtin/myHTMLBindings.html in the Mozilla directory (or another file pointed to by the binding above). Add the following to it:

<xml version="1.0"?>
<bindings id="htmlBindings"
   xmlns="http://www.mozilla.org/xbl"
   xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<binding id="textAreas"
    extends="resource:///res/builtin/platformHTMLBindings.xml#textAreas">
  <handlers>
    <handler event="keypress" keycode="VK_LEFT" modifiers="alt">
      var siz=parseInt(window.getComputedStyle(this,null).
        getPropertyValue("width"));
      if (siz > 36) this.style.width=(siz-8)+"px";
      event.preventDefault();
    </handler>
    <handler event="keypress" keycode="VK_RIGHT" modifiers="alt">
      var siz=parseInt(window.getComputedStyle(this,null).
        getPropertyValue("width"));
      this.style.width=(siz+16)+"px";
      event.preventDefault();
    </handler>
    <handler event="keypress" keycode="VK_UP" modifiers="alt">
      var siz=parseInt(window.getComputedStyle(this,null).
        getPropertyValue("height"));
      if (siz > 36) this.style.height=(siz-8)+"px";
      event.preventDefault();
    </handler>
    <handler event="keypress" keycode="VK_DOWN" modifiers="alt">
      var siz=parseInt(window.getComputedStyle(this,null).
        getPropertyValue("height"));
      this.style.height=(siz+16)+"px";
      event.preventDefault();
    </handler>
  </handlers>
</binding>
</bindings>

You might want to change the keys used. A similar technique can be used for other text fields.