title: Find elements by id /xpath that contains dots/ dash
body: <p>Unable to locate elements on Firefox web driver (selenium) by XPath / ID / tagName ...
  all these tags contains dash "-" , dot "." in their names.</p>
  
  <p>HTML</p>
  
  <pre><code>&lt;div class="col-xs-10 col-md-9 col-lg-8 form-field"&gt;
      &lt;div class="sn-stream-textarea-container"&gt;
          &lt;span class="sn-stream-input-decorator" style="background-color: gold"&gt;&lt;/span&gt;
          &lt;textarea id="activity-stream-work_notes-textarea" aria-label="Work notes (fulfiller only)" class="sn-string-textarea form-control ng-pristine ng-untouched ng-valid ng-isolate-scope ng-empty ng-valid-required"
              placeholder="Work notes (fulfiller only)" data-stream-text-input="work_notes" ng-required="activity_field_1.mandatory &amp;amp;&amp;amp; !activity_field_1.filled" ng-model="activity_field_1.value" ng-attr-placeholder="{{activity_field_1.label}}" sn-sync-with="activity_field_1.name"
              sn-sync-with-value-in-fn="reduceMentions(text)" sn-sync-with-value-out-fn="expandMentions(text)" mentio="" mentio-id="'activity-stream-work_notes-textarea'" mentio-typed-term="typedTerm" mentio-require-leading-space="true" mentio-trigger-char="'@'"
              mentio-items="members" mentio-search="searchMembersAsync(term)" mentio-template-url="/at-mentions.tpl" mentio-select="selectAtMention(item)" mentio-suppress-trailing-space="true" sn-resize-height="" style="overflow: hidden; overflow-wrap: break-word; height: 64px;"
              autocomplete="off" aria-invalid="false"&gt;
          &lt;/textarea&gt;
      &lt;/div&gt;
      &lt;ul id="fieldmsg-singleinput-7" class="ng-hide" tabindex="-1" ng-show="activity_field_1.messages.length &gt; 0" aria-hidden="true"&gt;
          &lt;!-- ngRepeat: msg in activity_field_1.messages --&gt;
      &lt;/ul&gt;
  &lt;/div&gt;
  </code></pre>
  
  <p>Code attempts</p>
  
  <pre><code>driver.FindElement(By.XPath("//[@id='activity-stream-work_notes-textarea']")).SendKeys("Test");
  driver.FindElement(By.Id("activity-stream-work_notes-textarea")).SendKeys("test");
  </code></pre>
  
  <p>Getting an error:</p>
  
  <blockquote>
    <p>Unable to locate element: #activity\-stream\-work_notes\textarea</p>
  </blockquote>
  
  <p>somehow it adds "\" before the dash / dot although its accepting the underscore "_".</p>
  
  <p><a href="https://i.stack.imgur.com/eJ2cG.png" rel="nofollow noreferrer">See screenshot of error</a></p>